本发明涉及数据库审计,尤其涉及数据库审计的流重组方法、装置、终端设备及存储介质。
背景技术:
1、现有的技术方案是拦截数据库客户端与数据库服务器之间,基于tcp/ip协议交互的数据包,并从数据包中解析出数据客户端与数据库服务器之间的交互内容,供预设审计用户进行数据库审计。然而,当数据包丢失时,会影响交互数据的还原,造成审计记录缺失。
2、因此,解决基于tcp/ip协议传输的数据包缺失,导致对数据库审计记录缺失的影响是当前亟待解决的问题。
技术实现思路
1、本申请的主要目的在于提供数据库审计的流重组方法、装置、终端设备及存储介质,旨在解决基于tcp/ip协议的数据包缺失,导致对数据库审计记录缺失的影响的问题。
2、为实现上述目的,本申请提供数据库审计的流重组方法,应用于数据库审计技术领域,所述数据库审计的流重组方法包括以下步骤:
3、获取客户端与数据库之间传输的无状态数据包;
4、提取所述无状态数据包中的特征数据;
5、根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的四元组映射流,重组得到数据包;
6、按照预设规则判断重组得到的数据包是否完整;
7、根据对所述重组得到的数据包是否完整的判断结果,解析重组得到的数据包。
8、可选的,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的四元组映射流,重组数据包的步骤包括:
9、根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的第一请求四元组映射流或第一应答四元组映射流,重组得到第一请求数据包或第一应答数据包。
10、可选的,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的第一请求四元组映射流或第一应答四元组映射流,重组得到第一请求数据包或第一应答数据包的步骤包括:
11、若所述特征数据中存在序列号,则将所述无状态数据包加入第一请求四元组映射流,重组得到第一请求数据包;
12、若所述特征数据中存在确认序列号,则将所述无状态数据包加入第一应答四元组映射流,重组得到第一应答数据包。
13、可选的,所述按照预设规则判断重组得到的数据包是否完整的步骤包括:
14、按照预设规则判断所述第一请求四元组映射流中的第一请求数据包与对应的第一应答四元组映射流中的第一应答数据包是否完整。
15、可选的,所述按照预设规则判断所述第一请求四元组映射流中的第一请求数据包与对应的第一应答四元组映射流中的第一应答数据包是否完整的步骤包括:
16、将所述第一请求四元组映射流中的第一请求数据包的序列号与长度的和,与对应的第一应答四元组映射流中的若干个应答数据包的确认序列号匹配,得到第一匹配结果;
17、若所述第一匹配结果为成功,则确认所述第一请求四元组映射流中的第一请求数据包完整;
18、将第一应答四元组映射流中的第一应答数据包的确认序列号与长度的和,与对应的第一请求四元组映射流中的若干个请求重组数据包的序列号匹配,得到第二匹配结果;
19、若所述第二匹配结果为成功,则确认所述第一应答四元组映射流中的第一应答数据包完整;
20、若所述第一匹配结果或第二匹配结果为失败,则确认所述第一请求四元组映射流中的第一请求数据包或所述第一应答四元组映射流中的第一应答数据包不完整。
21、可选的,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的第一请求四元组映射流或第一应答四元组映射流,重组得到第一请求数据包或第一应答数据包的步骤之前包括:
22、根据所述特征数据中的第一四元组,判断是否存在对应的四元组映射流;
23、若不存在对应的四元组映射流,则根据所述特征数据中的第一四元组建立所述第一请求四元组映射流和所述第一应答四元组映射流。
24、可选的,所述根据对所述重组得到的数据包是否完整的判断结果,解析重组得到的数据包的步骤包括:
25、若所述第一请求数据包与所述第一应答数据包完整,则将所述第一请求数据包与所述第一应答数据包组成请求应答对并解析;
26、若超过预设时间段,所述第一请求数据包不完整或所述第一应答数据包不完整,则将所述第一请求数据包与所述第一应答数据包生成待解析数据。
27、本申请实施案例还提出一种数据库审计的流重组装置,所述数据库审计的流重组装置包括:
28、获取模块,用于获取客户端与数据库之间传输的无状态数据包;
29、提取模块,用于提取所述无状态数据包中的特征数据;
30、重组模块,用于根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的四元组映射流,重组得到数据包;
31、判断模块,用于按照预设规则判断重组得到的数据包是否完整;
32、解析模块,用于根据对所述重组得到的数据包是否完整的判断结果,解析重组得到的数据包。
33、本申请实施案例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在存储器上并可在所述处理器上运行的数据库审计的流重组程序,所述数据库审计的流重组程序被所述处理器执行时实现所述数据库审计的流重组方法的步骤。
34、本申请实施案例还提出一种存储介质,所述存储介质上存储有数据库审计的流重组程序,所述数据库审计的流重组程序被处理器执行时实现所述数据库审计的流重组方法的步骤。
35、本申请提出的数据库审计的流重组方法、装置、终端设备及存储介质。通过获取客户端与数据库之间传输的无状态数据包;提取所述无状态数据包中的特征数据;根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的四元组映射流,重组得到数据包;按照预设规则判断重组得到的数据包是否完整;根据对所述重组得到的数据包是否完整的判断结果,解析重组得到的数据包。基于本申请,实现了将数据包进行重组,避免了数据包丢失导致的数据混乱,达到了降低数据库审计中数据流不完整造成的审计缺失,最大程度的保证审计记录完整性的效果。
1.一种数据库审计的流重组方法,其特征在于,所述数据库审计的流重组方法包括以下步骤:
2.根据权利要求1所述的数据库审计的流重组方法,其特征在于,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的四元组映射流,重组数据包的步骤包括:
3.根据权利要求2所述的数据库审计的流重组方法,其特征在于,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的第一请求四元组映射流或第一应答四元组映射流,重组得到第一请求数据包或第一应答数据包的步骤包括:
4.根据权利要求2所述的数据库审计的流重组方法,其特征在于,所述按照预设规则判断重组得到的数据包是否完整的步骤包括:
5.根据权利要求4所述的数据库审计的流重组方法,其特征在于,所述按照预设规则判断所述第一请求四元组映射流中的第一请求数据包与对应的第一应答四元组映射流中的第一应答数据包是否完整的步骤包括:
6.根据权利要求2所述的数据库审计的流重组方法,其特征在于,所述根据所述特征数据中的字段,将所述无状态数据包加入到预先得到的第一请求四元组映射流或第一应答四元组映射流,重组得到第一请求数据包或第一应答数据包的步骤之前包括:
7.根据权利要求1所述的数据库审计的流重组方法,其特征在于,所述根据对所述重组得到的数据包是否完整的判断结果,解析重组得到的数据包的步骤包括:
8.一种数据库审计的流重组装置,其特征在于,所述数据库审计的流重组装置包括:
9.一种终端设备,其特征在于,所述终端设备包括存储器、处理器及存储在存储器上并可在所述处理器上运行的数据库审计的流重组程序,所述数据库审计的流重组程序被所述处理器执行时实现如权利要求1-7中任一项所述数据库审计的流重组方法的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有数据库审计的流重组程序,所述数据库审计的流重组程序被处理器执行时实现如权利要求1-7中任一项所述数据库审计的流重组方法的步骤。