一种API和数据库的关联审计方法及系统技术方案

技术编号:36694194 阅读:14 留言:0更新日期:2023-02-27 20:04
本发明专利技术提出了一种API和数据库的关联审计方法及系统,涉及数据关联审计技术领域。首先,对操作系统的调用情况进行监控和跟踪,获取业务请求对应的程序指令信息,以及服务器响应于程序指令向数据库发送的数据库访问信息。然后,将两者发送至审计平台进行关联性分析。最后,将相互关联的程序指令信息和数据库访问信息进行关联标记,形成关联审计信息。即,通过监控跟踪操作系统的调用情况,同时收集API日志和数据库日志,并对两者进行关联性分析,从而实现两者的关联审计。实现两者的关联审计。实现两者的关联审计。

【技术实现步骤摘要】
一种API和数据库的关联审计方法及系统


[0001]本专利技术涉及数据关联审计
,具体而言,涉及一种API和数据库的关联审计方法及系统。

技术介绍

[0002]API(ApplicationProgrammingInterface,应用程序编程接口)是操作系统给应用程序的调用接口,应用程序通过调用操作系统的API而使操作系统去执行应用程序的命令或者动作。API审计和数据库审计系统通常采用网络抓包的方式收集日志。这种方法的好处是不影响原有系统的性能,缺点是难以得到两种日志的对应关系。而有时我们需要知道这种对应关系,如执行前台客户端的一个API指令时,后台服务器访问了数据库中的哪些表,或者反过来,数据在响应一个sql语句指令时是通过哪个用户、哪个API接口调用的,从而需要将API接口执行的程序指令和相关的数据库操作关联起来,形成关联的审计日志,便于后续的审计分析。

技术实现思路

[0003]本专利技术的目的在于提供一种API和数据库的关联审计方法及系统,通过监控跟踪操作系统的调用情况,同时收集API日志和数据库日志进行关联性分析,实现两者的关联审计。
[0004]本专利技术的实施例是这样实现的:
[0005]第一方面,本申请实施例提供一种API和数据库的关联审计方法,包括:
[0006]对客户端的系统调用进行监控,获取客户端应用的程序指令信息;
[0007]获取服务器响应于上述程序指令向数据库发送的数据库访问信息;
[0008]将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息。
[0009]基于第一方面,在本专利技术的一些实施例中,上述对客户端的系统调用进行监控,获取客户端应用的程序指令信息的步骤包括:
[0010]根据用户进程的启动请求创建用户进程,并对上述用户进程进行追踪;
[0011]当追踪到用户进程在进行系统调用时,获取系统调用的程序指令信息。
[0012]基于第一方面,在本专利技术的一些实施例中,上述将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息的步骤包括:
[0013]提取上述程序指令信息和数据库访问信息对应的时间戳和线程ID;
[0014]根据时间戳和线程ID分析确定程序指令信息和数据库访问信息之间的关联性;
[0015]根据两者的关联性生成关联审计信息。
[0016]基于第一方面,在本专利技术的一些实施例中,上述根据时间戳和线程ID分析确定程序指令信息和数据库访问信息的关联性的步骤包括:
[0017]若该程序指令信息和数据库访问信息的线程ID相同且时间戳在预设时间范围内,
则认为两者有关联性;若线程ID不同/线程ID相同但时间戳超出预设时间范围,则认为两者无关联性。
[0018]基于第一方面,在本专利技术的一些实施例中,还包括:
[0019]若上述程序指令信息和数据库访问信息之间有关联性,则添加关联ID字段,以形成上述关联审计信息。
[0020]基于第一方面,在本专利技术的一些实施例中,还包括:
[0021]基于http协议提取上述程序指令信息对应的时间戳和线程ID,并基于TCP报文提取上述数据库访问信息对应的时间戳和线程ID。
[0022]第二方面,本申请实施例提供一种API和数据库的关联审计系统,其包括:
[0023]程序指令信息获取模块,用于对客户端的系统调用进行监控,获取客户端应用的程序指令信息;
[0024]数据库访问信息获取模块,用于获取服务器响应于上述程序指令向数据库发送的数据库访问信息;
[0025]信息关联模块,用于将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息。
[0026]基于第二方面,在本专利技术的一些实施例中,上述信息关联模块包括:
[0027]提取子模块,用于提取上述程序指令信息和数据库访问信息对应的时间戳和线程ID;
[0028]关联分析子模块,用于根据时间戳和线程ID分析确定程序指令信息和数据库访问信息之间的关联性;
[0029]关联审计信息生成子模块,用于根据程序指令信息和数据库访问信息之间的关联性生成关联审计信息。
[0030]第三方面,本申请实施例提供一种电子设备,其包括存储器,用于存储一个或多个程序;处理器。当上述一个或多个程序被上述处理器执行时,实现如上述第一方面中任一项上述的方法。
[0031]第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述第一方面中任一项上述的方法。
[0032]相对于现有技术,本专利技术的实施例至少具有如下优点或有益效果:
[0033]本申请实施例提供一种API和数据库的关联审计方法及系统,首先,对操作系统的调用情况进行监控和跟踪。当客户端向服务端发出业务请求时,获取业务请求对应的程序指令信息,并发送至审计平台进行存储(按时间戳的顺序获取到多条程序指令信息,即形成API日志)。接着,获取服务器响应于程序指令向数据库发送的数据库访问信息,并发送至审计平台进行存储(按时间戳的顺序获取到多条数据库访问信息,即形成数据库日志)。然后,提取程序指令信息和数据库访问信息对应的时间戳和线程ID,并据其对两者进行关联性分析。最后,将相互关联的程序指令信息和数据库访问信息进行关联标记,形成关联审计信息。从而,可以根据关联审计信息作一些统计分析和安全规则配置等。整体而言,本申请通过监控跟踪操作系统的调用情况,能够同时收集API日志和数据库日志,并对两者进行关联性分析,实现两者的关联审计。
附图说明
[0034]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0035]图1为本专利技术提供的一种API和数据库的关联审计方法一实施例的步骤流程图;
[0036]图2为本专利技术提供的一种API和数据库的关联审计方法一实施例中将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息的步骤的具体流程图;
[0037]图3为本专利技术提供的一种API和数据库的关联审计系统一实施例的结构框图;
[0038]图4为本专利技术实施例提供的一种电子设备的结构框图。
[0039]图标:1、存储器;2、处理器;3、通信接口;11、程序指令信息获取模块;12、数据库访问信息获取模块;13、信息关联模块。
具体实施方式
[0040]为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种API和数据库的关联审计方法,其特征在于,包括:对客户端的系统调用进行监控,获取客户端应用的程序指令信息;获取服务器响应于所述程序指令向数据库发送的数据库访问信息;将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息。2.如权利要求1所述的一种API和数据库的关联审计方法,其特征在于,所述对客户端的系统调用进行监控,获取客户端应用的程序指令信息的步骤包括:根据用户进程的启动请求创建用户进程,并对所述用户进程进行追踪;当追踪到用户进程在进行系统调用时,获取系统调用的程序指令信息。3.如权利要求1所述的一种API和数据库的关联审计方法,其特征在于,所述将程序指令信息和数据库访问信息发送至审计平台进行关联性分析,并生成关联审计信息的步骤包括:提取所述程序指令信息和数据库访问信息对应的时间戳和线程ID;根据时间戳和线程ID分析确定程序指令信息和数据库访问信息之间的关联性;根据两者的关联性生成关联审计信息。4.如权利要求3所述的一种API和数据库的关联审计方法,其特征在于,所述根据时间戳和线程ID分析确定程序指令信息和数据库访问信息的关联性的步骤包括:若该程序指令信息和数据库访问信息的线程ID相同且时间戳在预设时间范围内,则认为两者有关联性;若线程ID不同/线程ID相同但时间戳超出预设时间范围,则认为两者无关联性。5.如权利要求4所述的一种API和数据库的关联审计方法,其特征在于,还包括:若所述程序指令信息和数据库访问信息之间有关联性,...

【专利技术属性】
技术研发人员:唐更新徐强宋辉赵卫国
申请(专利权)人:北京中安星云软件技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1