一种数据库的审计系统的制作方法

文档序号:18941863发布日期:2019-10-23 01:13阅读:156来源:国知局
一种数据库的审计系统的制作方法

本发明涉及数据库安全管控技术领域,尤其涉及一种数据库的审计系统。



背景技术:

数据库是信息时代的产物,各行各业都在用数据库存储企业的核心数据,这些数据包含客户信息、商业信息等。这些信息是企业的无形资产,对企业的生存和发展有重要的战略意义。互联网的发展促进了信息的互联互通,让数据的价值获得了提升,但也使得数据的安全面临严峻的挑战。

目前,数据安全面临的问题包括以下几个方面:1)访问控制:数据访问未做限制,或者访问控制的方式和策略不到位,导致关键数据从内部流出或者被外部人员窃取;2)变更控制:对数据库进行的操作没有审核,由于人为因素,导致数据异常,造成企业重大损失;另外黑客通过技术手段,绕开审核系统,从内部进行的操作,可能导致数据被恶意篡改;3)安全审计:大多数数据库因为各种原因,没有相应的审计方法,导致问题发生时,无法追溯具体的原因,也无法定位具体的操作者。



技术实现要素:

针对现有技术中存在的上述问题,现提供一种数据库的审计系统。

具体技术方案如下:

一种数据库的审计系统,其中,所述数据库中保存有来自外部的各个数据源的数据,所述数据库通信连接至少一个用户端;

所述审计系统连接所述数据库,并包括:

一配置端,所述配置端包括:

一前置单元,用于获取来自所述用户端的数据请求信息;

一审计端,所述审计端通过一通信模块连接所述配置端,所述审计端包括:

一分析单元,用于将所述数据请求信息与预先配置的访问策略进行匹配,并根据匹配结果发送所述数据请求信息所对应的数据操作是否被允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述分析单元同时根据所述匹配结果生成访问日志并输出;

一策略单元,连接所述分析单元,用于预先设置并保存所述访问策略,所述访问策略包括访问权限以及当所述数据请求信息不符合所述访问权限时的处理方式;

一审计单元,连接所述分析单元,用以接收所述访问日志,并定期对所述访问日志进行审计,以输出针对预设时段内访问所述数据库的所有所述用户端的所有访问行为的审计报表。

优选的,所述访问权限用于指示所述用户端的访问数据的数据管控的第一权限;

所述分析单元包括:

一数据分级模块,用于对来自所述用户端的数据请求信息的访问数据进行分级处理;

一第一判断模块,连接所述数据分级模块,用于判断经过所述分级处理后属于敏感数据的所述访问数据是否在所述第一权限内,并输出一第一判断结果;

一第一分析模块,连接所述第一判断模块,用于根据所述第一判断结果:

当所述访问数据在所述第一权限内时,所述第一分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第一分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据不在所述第一权限内时,所述第一分析模块发送一拒绝执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第一分析模块同时根据所述匹配结果生成所述访问日志并输出。

优选的,所述访问权限用于指示所述用户端的访问数据的访问安全的第二权限;

所述分析单元包括:

一访问范围设置模块,用于对来自所述用户端的数据请求信息的访问数据设置一访问安全区域;

一第二判断模块,连接所述访问范围设置模块,用于判断所述访问数据的访问范围是否在所述访问安全区域内,并输出一第二判断结果;

一第二分析模块,连接所述第二判断模块,用于根据所述第二判断结果:

当所述访问数据的访问范围在所述访问安全区域内时,所述第二分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第二分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据的访问范围不在所述访问安全区域内时,所述第二分析模块发送一拒绝执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第二分析模块同时根据所述匹配结果生成所述访问日志并输出。

优选的,所述访问权限用于指示所述用户端的访问数据的访问时间段的第三权限;

所述分析单元包括:

一访问时间设置模块,用于对来自所述用户端的数据请求信息的访问数据设置一访问时间段;

一第三判断模块,连接所述访问时间设置模块,用于判断所述访问数据的访问时间是否在所述访问时间段内,并输出一第三判断结果;

一第三分析模块,连接所述第三判断模块,用于根据所述第三判断结果:

当所述访问数据的访问时间在所述访问时间段内时,所述第三分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第三分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据的访问时间不在所述访问时间段内时,所述第三分析模块发送一拒绝执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第三分析模块同时根据所述匹配结果生成所述访问日志并输出。

优选的,所述访问权限用于指示所述用户端的访问数据的访问类型的第四权限;

所述分析单元中包括:

一白名单设置模块,用于对来自所述用户端的数据请求信息的访问数据设置一白名单模板;

一第四判断模块,连接所述白名单设置模块,用于判断所述访问数据的访问类型是否存在于所述白名单模板内,并输出一第四判断结果;

一第四分析模块,连接所述第四判断模块,用于根据所述第四判断模块:

当所述访问数据的访问类型在所述白名单模板内时,所述第四分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第四分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据的访问类型不在所述白名单模板内时,所述第四分析模块发送一拒绝执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第四分析模块同时根据所述匹配结果生成所述访问日志并输出。

优选的,所述访问权限用于指示所述用户端的访问数据的访问参数的第五权限;

所述分析单元中包括:

一参数设置模块,用于对来自所述用户端的数据请求信息的访问数据设置各类访问参数;

一第五判断模块,连接所述参数设置模块,用于判断所述访问数据的访问参数是否是各类所述访问参数中的至少一类,并输出一第五判断结果;

一第五分析模块,连接所述第五判断模块,用于根据所述第五判断模块:

当所述访问数据的访问参数是所述访问参数中的至少一类时,所述第五分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第五分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据的访问参数不是所述访问参数中的至少一类时,所述第五分析模块发送一拒绝执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第五分析模块同时根据所述匹配结果生成所述访问日志并输出。

优选的,所述访问权限用于指示所述用户端的访问数据的访问语句类型参数的第六权限;

所述分析单元中包括:

一语句类型设置模块,用于对来自所述用户端的数据请求信息的访问数据设置各类操作语句类型;

一第六判断模块,连接所述操作语句类型模块,用于判断所述访问数据的访问语句类型是否是各类所述操作语句类型中的至少一种,并输出一第六判断结果;

一第六分析模块,连接所述第六判断模块,用于根据所述第六判断模块:

当所述访问数据的访问语句类型是所述操作语句类型中的至少一类时,所述第六分析模块发送一允许执行的控制指令来控制所述前置单元对所述数据请求信息进行操作,所述第六分析模块同时根据所述匹配结果生成所述访问日志并输出;

当所述访问数据的访问语句类型不是所述操作语句类型中的至少一类时,所述第六分析模块发送一拒绝执行的控制指令来控制述前置单元对所述数据请求信息进行操作,所述第六分析模块同时根据所述匹配结果生成所述访问日志并输出。

本发明的技术方案的有益效果在于:提供一种数据库的审计系统,对数据库的管控力度更细,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

附图说明

参考所附附图,以更加充分的描述本发明的实施例。然而,所附附图仅用于说明和阐述,并不构成对本发明范围的限制。

图1为本发明的实施例的数据库的审计系统的原理框图;

图2为本发明的实施例的数据库的审计系统的分析单元的第一实施例的原理框图;

图3为本发明的实施例的数据库的审计系统的分析单元的第二实施例的原理框图;

图4为本发明的实施例的数据库的审计系统的分析单元的第三实施例的原理框图;

图5为本发明的实施例的数据库的审计系统的分析单元的第四实施例的原理框图;

图6为本发明的实施例的数据库的审计系统的分析单元的第五实施例的原理框图;

图7为本发明的实施例的数据库的审计系统的分析单元的第六实施例的原理框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。

本发明包括一种数据库的审计系统,其中,数据库1中保存有来自外部的各个数据源的数据,数据库1通信连接至少一个用户端2;

审计系统3连接数据库1,并包括:

一配置端30,配置端30包括:

一前置单元300,用于获取来自用户端2的数据请求信息;

一审计端31,审计端31通过一通信模块32连接配置端30,审计端31包括:

一分析单元310,用于将数据请求信息与预先配置的访问策略进行匹配,并根据匹配结果发送数据请求信息所对应的数据操作是否被允许执行的控制指令来控制前置单元对数据请求信息进行操作,分析单元同时根据匹配结果生成访问日志并输出;

一策略单元311,连接分析单元310,用于预先设置并保存访问策略,访问策略包括访问权限以及当数据请求信息不符合访问权限时的处理方式;

一审计单元312,连接分析单元310,用以接收访问日志,并定期对访问日志进行审计,以输出针对预设时段内访问数据库的所有用户端的所有访问行为的审计报表。

通过上述数据库的审计系统的技术方案,如图1所示,审计系统用于对数据库1的数据进行管控,数据库1中保存有来自外部的各个数据源的数据,数据库1通信连接至少一个用户端2,其中,用户端2可以是用户,也可以是应用端,用户端2会向数据库发送访问数据库的数据请求信息,然后通过配置端30中的配置单元300获取来自用户端2的数据请求信息,其中,配置单元300可以是防火墙,用于采集所有的数据请求信息以保证所有的流量都从该防火墙中进入,并转入审计系统中,其中数据库1提供一统一对外开放的数据接口,即防火墙将采集到所有的数据请求信息通过该数据接口传入审计系统中。

进一步地,审计系统还包括审计端31,审计端31通过通信模块32连接配置端30,其中,通信模块32可以是有线通信模块,也可以是无线通信模块,具体地,采用审计端31的分析单元310,其中,分析单元310可以是分析引擎,以将数据请求信息与预先配置的访问策略进行匹配,并根据匹配结果发送数据请求信息所对应的数据操作是否被允许执行的控制指令来控制前置单元对数据请求信息进行操作,同时根据匹配结果生成访问日志并输出进行归档,以备追溯。

上述技术方案中,审计端31的策略单元311预先设置并保存访问策略,访问策略包括访问权限以及当数据请求信息不符合访问权限时的处理方式;具体地,访问权限包括权限、对象、用户、来源及时间跨度等,例如,数据管控、访问安全、访问时间段、访问类型、访问参数、访问语句类型参数等访问权限,访问权限的处理方式包括允许执行、拒绝执行及警报指示等方式。

进一步地,通过审计端31的审计单元312接收访问日志,并定期对访问日志进行审计,以输出针对预设时段内访问数据库的所有用户端的所有访问行为的审计报表。例如,审计单元312包括对操作行为进行审核,对数据库发起的所有操作请求进行审核,允许的操作进行记录然后放行,不允许的操作进行拒绝并进发起警报,审计单元312还包括对日志进行审核,解决现有审计与数据库性能的矛盾,通过带外的方式对数据库的操作进行审计。具体地,对频繁执行的sql进行统计,自动触发推送报表,交由人工处理,对操作次数最高的用户及用户行为进行审计,确认是否正常,对频繁访问的对象进行分析,确认对象是否不存在不合理的访问。

进一步地,对数据库的管控力度更细,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的数据管控的第一权限;

分析单元310包括:

一数据分级模块3100,用于对来自用户端2的数据请求信息的访问数据进行分级处理;

一第一判断模块3101,连接数据分级模块3100,用于判断经过分级处理后属于敏感数据的访问数据是否在第一权限内,并输出一第一判断结果;

一第一分析模块3102,连接第一判断模块,用于根据第一判断结果:

当访问数据在第一权限内时,第一分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第一分析模块同时根据匹配结果生成访问日志并输出;

当访问数据不在第一权限内时,第一分析模块发送一拒绝执行的控制指令来控制前置单元对数据请求信息进行操作,第一分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图2所示,本实施例中设置的访问权限是指示用户端的访问数据的数据管控,能够将对来自用户端2的数据请求信息的访问数据进行分级处理,然后对属于敏感数据及关键性数据进行权限管控,例如,敏感数据可以是用户id、用户名称、用户信息等,权限管控可以是设置特定的管理人员进行管理或设置多级管理模式等等,以保证数据库中的核心数据不被窥视。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的访问安全的第二权限;

分析单元310包括:

一访问范围设置模块3103,用于对来自用户端2的数据请求信息的访问数据设置一访问安全区域;

一第二判断模块3104,连接访问范围设置模块3103,用于判断访问数据的访问范围是否在访问安全区域内,并输出一第二判断结果;

一第二分析模块3105,连接第二判断模块3104,用于根据第二判断结果:

当访问数据的访问范围在访问安全区域内时,第二分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第二分析模块同时根据匹配结果生成访问日志并输出;

当访问数据的访问范围不在访问安全区域内时,第二分析模块发送一拒绝执行的控制指令来控制前置单元对数据请求信息进行操作,第二分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图3所示,本实施例的访问权限是指示用户端的访问数据的访问安全,能够对来自用户端2的数据请求信息的访问数据设置一访问安全区域,例如,访问范围的有效性控制,设定访问安全区域,在访问安全区域内进行合规的操作,超出访问安全区域就无法进行任何操作。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的访问时间段的第三权限;

分析单元310包括:

一访问时间设置模块3106,用于对来自用户端2的数据请求信息的访问数据设置一访问时间段;

一第三判断模块3107,连接访问时间设置模块3106,用于判断访问数据的访问时间是否在访问时间段内,并输出一第三判断结果;

一第三分析模块3108,连接第三判断模块3107,用于根据第三判断结果:

当访问数据的访问时间在访问时间段内时,第三分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第三分析模块同时根据匹配结果生成访问日志并输出;

当访问数据的访问时间不在访问时间段内时,第三分析模块发送一拒绝执行的控制指令来控制前置单元对数据请求信息进行操作,第三分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图4所示,本实施例的访问权限是指示用户端的访问数据的访问时间段的第三权限,首先对来自用户端2的数据请求信息的访问数据设置一访问时间段,用于访问时间有效性的控制,例如对于特定安全级别高的数据,只允许在特定时间段内进行操作。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的访问类型的第四权限;

分析单元310中包括:

一白名单设置模块3109,用于对来自用户端2的数据请求信息的访问数据设置一白名单模板;

一第四判断模块3110,连接白名单设置模块3109,用于判断访问数据的访问类型是否存在于白名单模板内,并输出一第四判断结果;

一第四分析模块3111,连接第四判断模块3110,用于根据第四判断模块:

当访问数据的访问类型在白名单模板内时,第四分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第四分析模块同时根据匹配结果生成访问日志并输出;

当访问数据的访问类型不在白名单模板内时,第四分析模块发送一拒绝执行的控制指令来控制前置单元对数据请求信息进行操作,第四分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图5所示,本实施例的访问权限是指示用户端的访问数据的访问类型的第四权限,首先用于对来自用户端2的数据请求信息的访问数据设置一白名单模板,例如,白名单模板包括客户端主机即ip白名单、对象列表即数据库对象白名单、用户列表即访问用户白名单、模块列表即工具白名单,将允许的白名单模板加入允许列表,在列表之外的任何模块将无法对数据进行任何操作,防止各种黑客工具对数据库进行尝试性访问。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的访问参数的第五权限;

分析单元310中包括:

一参数设置模块3112,用于对来自用户端的数据请求信息的访问数据设置各类访问参数;

一第五判断模块3113,连接参数设置模块3112,用于判断访问数据的访问参数是否是各类访问参数中的至少一类,并输出一第五判断结果;

一第五分析模块3114,连接第五判断模块3113,用于根据第五判断模块:

当访问数据的访问参数是访问参数中的至少一类时,第五分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第五分析模块同时根据匹配结果生成访问日志并输出;

当访问数据的访问参数不是访问参数中的至少一类时,第五分析模块发送一拒绝执行的控制指令来控制前置单元对数据请求信息进行操作,第五分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图6所示,本实施例的访问权限是指示用户端的访问数据的访问参数的第五权限,首先用于对来自用户端的数据请求信息的访问数据设置各类访问参数,对传入数据库的各种参数进行解析,防止异常的传入请求,类似于通过sql注入传入的请求参数,以避免数据库被侵入。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

在一种较优的实施例中,访问权限用于指示用户端的访问数据的访问语句类型参数的第六权限;

分析单元310中包括:

一语句类型设置模块3115,用于对来自用户端的数据请求信息的访问数据设置各类操作语句类型;

一第六判断模块3116,连接操作语句类型模块3115,用于判断访问数据的访问语句类型是否是各类操作语句类型中的至少一种,并输出一第六判断结果;

一第六分析模块3117,连接第六判断模块3116,用于根据第六判断模块:

当访问数据的访问语句类型是操作语句类型中的至少一类时,第六分析模块发送一允许执行的控制指令来控制前置单元对数据请求信息进行操作,第六分析模块同时根据匹配结果生成访问日志并输出;

当访问数据的访问语句类型不是操作语句类型中的至少一类时,第六分析模块发送一拒绝执行的控制指令来控制述前置单元对数据请求信息进行操作,第六分析模块同时根据匹配结果生成访问日志并输出。

具体地,如图6所示,本实施例的访问权限是指示用户端的访问数据的访问语句类型参数的第六权限,首先用于对来自用户端2的数据请求信息的访问数据设置各类操作语句类型,对数据库的操作语句进行类别控制,例如对危险性的行为进行拦截,严重性的行为及逆行预警等类型进行严格审核及权限管控,以防数据或数据库被破坏。

进一步地,能够对数据库的潜在风险操作进行主动防御,可以及时预警并通知到管理者以进行主动屏蔽,并且在数据库的外部设置审计系统,不影响数据库的性能,不易更改数据库的数据,审计日志也不能被修改,进而保证数据库的数据安全,避免数据库的数据不被轻易篡改,以达到安全审计的目的。

以上仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本发明说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1