本发明专利技术提供一种数据库自动化审计方法、系统、设备及存储介质,包括:获取数据库中的待审计数据库表;根据待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;响应于用户对待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;当操作为预定操作类型时,触发所述触发器审计待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。根据待审计数据库表的名称生成与待审计数据库表对应的触发器,可以对某个待审计数据库表进行快速部署审计,也可按需快速卸载审计代码,降低了系统负担。
Database automation audit method, system, equipment and storage medium
【技术实现步骤摘要】
数据库自动化审计方法、系统、设备及存储介质
本专利技术涉及计算机
,尤其涉及一种数据库自动化审计方法、系统、设备及存储介质。
技术介绍
现有的数据库审计的一种做法基于日志分析技术进行数据库审计,就是通过分析数据库系统中业务数据的交易、操作日志,来发现违规的风险;通过分析数据库系统自身的各种日志,提前发现黑客攻击、系统故障等数据库风险。但是这种方法有效性、及时性不能得到保障;由于采用纯粹数据库分析技术,对于一个数据库连接,无法获取应用中的用户具体信息;另外一种方法是,通过应用开发,将用户的每一个操作,包括各种查询、点击、修改等记录到数据库表或者文件系统中,此种方法可读性较强,当需要查询时某个数据操作记录时,可以快速定位,但用这种方法也有一定的缺陷,由于每个操作都要进行记录日志,大大降低了系统性能,而且只能记录应用系统内的操作,对于运维人员直接操作数据库,无法进行审计。
技术实现思路
有鉴于此,本专利技术实施例提供了一种数据库自动化审计方法、系统、计算机设备及计算机可读存储介质,用于解决数据库审计不准确和审计系统性能低的问题。本专利技术实施例是通过下述技术方案来解决上述技术问题:一种数据库自动化审计方法,包括:获取数据库中的待审计数据库表;根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;响应于用户对所述待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。进一步地,所述所述根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计包括:获取用于审计所述待审计数据库表的固定字段;获取所述待审计数据库表的表名称和所述待审计数据库表中需要审计的列数据;将所述表名称和所述列数据填充到所述固定字段的相应位置处,生成所述待审计数据库表对应的触发器。进一步地,所述预定操作类型包括如下中的至少一个:对所述待审计数据库表中的数据插入操作;对所述待审计数据库表中的数据删除操作;对所述待审计数据库表中的数据更新操作。进一步地,所述当所述操作为预定操作时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表包括:获取用于审计的公共字段;当所述预定操作为对待审计数据库表中的数据插入操作时,所述触发器记录插入的数据值或者当所述预定操作为对待审计数据库表中的数据删除操作时,所述触发器记录删除的数据值;将所述用于审计的公共字段和所述插入的数据值和/或删除的数据值写入所述数据归档表中。进一步地,所述所述当所述操作为预定操作时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表包括:获取用于审计的公共字段;当所述预定操作为对待审计数据库表中的数据更新操作时,所述触发器记录更新之前的数据值和更新之后的数据值;将所述用于审计的公共字段、所述更新之前的数据值和更新之后的数据值分别写入所述数据更新表中。进一步地,不同的预定操作类型对应不同的操作编号,所述方法还包括:根据所述操作编号,生成与所述用户对所述待审计数据库表的操作对应的序列编号。进一步地,所述方法还包括:将所述审计结果存储于区块链上。为了实现上述目的,本专利技术实施例还提供一种数据库自动化审计系统,包括:待审计数据库表获取模块,用于获取数据库中的待审计数据库表;触发器生成模块,用于根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;预定操作判断模块,用于响应于用户对所述待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;审计结果生成模块,用于当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。为了实现上述目的,本专利技术实施例还提供一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上所述数据库自动化审计方法的步骤。为了实现上述目的,本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的数据库自动化审计方法的步骤。本专利技术实施例提供的数据库自动化审计方法、系统、计算机设备及计算机可读存储介质,通过获取数据库中的待审计数据库表;根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;响应于用户对所述待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。根据待审计数据库表的名称生成与待审计数据库表对应的触发器,可以对某个待审计数据库表进行快速部署审计,降低了系统负担。以下结合附图和具体实施例对本专利技术进行详细描述,但不作为对本专利技术的限定。附图说明图1为本专利技术实施例一之数据库自动化审计方法的步骤流程图;图2为步骤根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计的具体流程示意图;图3为步骤当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表的一种实施方式的具体流程示意图;图4为步骤当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表的另一种实施方式的具体流程示意图;图5为本专利技术数据库自动化审计系统之实施例二的程序模块示意图;图6为本专利技术计算机设备之实施例三的硬件结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人本文档来自技高网...
【技术保护点】
1.一种数据库自动化审计方法,其特征在于,包括:/n获取数据库中的待审计数据库表;/n根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;/n响应于用户对所述待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;/n当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。/n
【技术特征摘要】
1.一种数据库自动化审计方法,其特征在于,包括:
获取数据库中的待审计数据库表;
根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计;
响应于用户对所述待审计数据库表的操作,获取所述操作的用户操作类型,判断所述用户操作类型是否是预定操作类型;
当所述操作为预定操作类型时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表。
2.根据权利要求1所述的数据库自动化审计方法,其特征在于,所述根据所述待审计数据库表,生成与所述待审计数据库表对应的触发器,其中,所述触发器用于根据用户操作类型对所述待审计数据库表中数据变化情况进行审计包括:
获取用于审计所述待审计数据库表的固定字段;
获取所述待审计数据库表的表名称和所述待审计数据库表中需要审计的列数据;
将所述表名称和所述列数据填充到所述固定字段的相应位置处,生成所述待审计数据库表对应的触发器。
3.根据权利要求2所述的数据库自动化审计方法,其特征在于,所述预定操作类型包括如下中的至少一个:
对所述待审计数据库表中的数据插入操作;
对所述待审计数据库表中的数据删除操作;
对所述待审计数据库表中的数据更新操作。
4.根据权利要求3所述的数据库自动化审计方法,其特征在于,所述当所述操作为预定操作时,触发所述触发器审计所述待审计数据库表,得到审计结果,所述审计结果包括数据归档表和数据更新表包括:
获取用于审计的公共字段;
当所述预定操作为对待审计数据库表中的数据插入操作时,所述触发器记录插入的数据值或者
当所述预定操作为对待审计数据库表中的数据删除操作时,所述触发器记录删除的数据值;
将所述用于审计的公共字段和所述插入的数据值和/或删除的数据值写入所述数据归档表中。
5.根据权利要求3所述的数据库自动化审计方法,其特征在于,...
【专利技术属性】
技术研发人员:祝明洲,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。