System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机,尤其涉及一种数据库语句的处理方法和装置。
技术介绍
1、在对数据库执行操作之前,需要先获取对应的数据库操作语句,数据库操作语句通常包括多个条件查询字段,条件查询字段包括明文字段和密文字段。例如,对选定的条件变量进行加密,得到密文字段,将未加密的条件变量作为明文字段,将明文字段、密文字段和一些数据库关键字拼接为数据库操作语句。
2、在实现本专利技术的过程中,专利技术人发现现有技术至少存在如下问题:对不同字段进行加密的方式是相同的,难以满足不同的加密业务需求,存在数据泄露等安全隐患。
技术实现思路
1、有鉴于此,本专利技术实施例提供一种数据库语句的处理方法和装置,能够灵活、高效地对数据库操作语句进行加密,提高数据库语句执行的安全性。
2、为实现上述目的,根据本专利技术实施例的第一方面,提供一种数据库语句的处理方法,包括:响应于接收到数据库操作语句,确定所述数据库操作语句的操作类型;根据所述操作类型,确定对应的加密规则,根据所述加密规则,对所述数据库操作语句进行修改;对预先设置的数据库执行修改后的数据库操作语句。
3、可选地,在接收到数据库操作语句之前,所述方法还包括:响应于接收到逻辑注入请求,获取所述数据库对应的源码包,在所述源码包中,确定对应的逻辑增强点;将预先设置的业务逻辑注入至所述逻辑增强点,所述业务逻辑包括:对所述数据库操作语句进行修改的业务逻辑。
4、可选地,在所述源码包中,确定对应的逻辑增强点,包括:根据
5、可选地,所述加密规则包括:在数据库操作语句中添加条件筛选字段;根据所述加密规则,对所述数据库操作语句进行修改,包括:确定所述数据库操作语句所包括的目标字段;根据预先设置的配置信息,确定所述目标字段对应的加密字段,以及所述加密字段对应的加密字段值,将所述加密字段作为所述条件筛选字段;将所述加密字段和所述加密字段值添加至所述数据库操作语句,将添加所述加密字段和所述加密字段值之后的数据库操作语句作为修改后的数据库操作语句。
6、可选地,在根据预先设置的配置信息,确定所述目标字段对应的加密字段,以及所述加密字段对应的加密字段值之前,所述方法还包括:响应于接收到所述目标字段的字段加密请求,创建所述目标字段对应的加密字段;获取所述目标字段的目标字段值,根据预先设置的加密算法,对所述目标字段值进行加密,将所述目标字段的加密结果作为所述加密字段的加密字段值;将所述加密字段和所述加密字段值存储至预先设置的配置信息。
7、可选地,在对预先设置的数据库执行修改后的数据库操作语句之后,所述方法还包括:获取所述改写后的数据库操作语句的执行结果;根据所述数据库操作语句、所述改写后的数据库操作语句和所述执行结果,生成对应的数据库操作日志,将所述数据库操作日志存储至预先设置的数据库操作日志集;响应于接收到操作查询请求,确定对应的目标数据库操作语句,从所述数据库操作日志集中,获取所述目标数据库操作语句对应的目标数据库操作日志。
8、可选地,在接收到数据库操作语句之前,所述方法还包括:响应于接收到数据库连接语句,根据预先设置的解密算法,对所述数据库连接语句进行解密;对所述数据库执行解密后的数据库连接语句,使所述数据库连接语句的发送方与所述数据库建立连接。
9、根据本专利技术实施例的第二方面,提供一种数据库语句的处理装置,包括:确定模块,用于响应于接收到数据库操作语句,确定所述数据库操作语句的操作类型;修改模块,用于根据所述操作类型,确定对应的加密规则,根据所述加密规则,对所述数据库操作语句进行修改;执行模块,用于对预先设置的数据库执行修改后的数据库操作语句。
10、可选地,所述装置还包括:第二确定模块,用于响应于接收到逻辑注入请求,获取所述数据库对应的源码包,在所述源码包中,确定对应的逻辑增强点;逻辑注入将预先设置的业务逻辑注入至所述逻辑增强点,所述业务逻辑包括:对所述数据库操作语句进行修改的业务逻辑。
11、可选地,在所述源码包中,确定对应的逻辑增强点,包括:根据预先设置的配置信息,确定所述业务逻辑对应的源码方法名和逻辑执行顺序;在所述源码包中,根据所述源码方法名,确定对应的源码方法,根据所述逻辑执行顺序,从所述源码方法对应的逻辑增强点集中,确定所述业务逻辑对应的逻辑增强点。
12、可选地,所述加密规则包括:在数据库操作语句中添加条件筛选字段;根据所述加密规则,对所述数据库操作语句进行修改,包括:确定所述数据库操作语句所包括的目标字段;根据预先设置的配置信息,确定所述目标字段对应的加密字段,以及所述加密字段对应的加密字段值,将所述加密字段作为所述条件筛选字段;将所述加密字段和所述加密字段值添加至所述数据库操作语句,将添加所述加密字段和所述加密字段值之后的数据库操作语句作为修改后的数据库操作语句。
13、可选地,所述装置还包括:创建模块,用于响应于接收到所述目标字段的字段加密请求,创建所述目标字段对应的加密字段;加密模块,用于获取所述目标字段的目标字段值,根据预先设置的加密算法,对所述目标字段值进行加密,将所述目标字段的加密结果作为所述加密字段的加密字段值;配置模块,用于将所述加密字段和所述加密字段值存储至预先设置的配置信息。
14、可选地,所述装置还包括:获取模块,用于获取所述改写后的数据库操作语句的执行结果;生成模块,用于根据所述数据库操作语句、所述改写后的数据库操作语句和所述执行结果,生成对应的数据库操作日志,将所述数据库操作日志存储至预先设置的数据库操作日志集;查询模块,用于响应于接收到操作查询请求,确定对应的目标数据库操作语句,从所述数据库操作日志集中,获取所述目标数据库操作语句对应的目标数据库操作日志。
15、可选地,所述装置还包括:解密模块,用于响应于接收到数据库连接语句,根据预先设置的解密算法,对所述数据库连接语句进行解密;连接模块,用于对所述数据库执行解密后的数据库连接语句,使所述数据库连接语句的发送方与所述数据库建立连接。
16、根据本专利技术实施例的第三方面,提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,所述一个或多个处理器实现上述任一实施例所述的方法。
17、根据本专利技术实施例的第四方面,提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任一实施例所述的方法。
18、上述专利技术中的一个实施例具有如下优点或有益效果:根据操作类型,确定加密规则,对数据库操作语句执行对应的修改,能够灵活、高效地对数据库操作语句进行加密,提高数据库语句执行的安全性;使用字节码增强技术,在数据库源码中注入字段加密的本文档来自技高网...
【技术保护点】
1.一种数据库语句的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在接收到数据库操作语句之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,在所述源码包中,确定对应的逻辑增强点,包括:
4.根据权利要求1所述的方法,其特征在于,所述加密规则包括:在数据库操作语句中添加条件筛选字段;根据所述加密规则,对所述数据库操作语句进行修改,包括:
5.根据权利要求4所述的方法,其特征在于,在根据预先设置的配置信息,确定所述目标字段对应的加密字段,以及所述加密字段对应的加密字段值之前,所述方法还包括:
6.根据权利要求1所述的方法,其特征在于,在对预先设置的数据库执行修改后的数据库操作语句之后,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,在接收到数据库操作语句之前,所述方法还包括:
8.一种数据库语句的处理装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述
...【技术特征摘要】
1.一种数据库语句的处理方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,在接收到数据库操作语句之前,所述方法还包括:
3.根据权利要求2所述的方法,其特征在于,在所述源码包中,确定对应的逻辑增强点,包括:
4.根据权利要求1所述的方法,其特征在于,所述加密规则包括:在数据库操作语句中添加条件筛选字段;根据所述加密规则,对所述数据库操作语句进行修改,包括:
5.根据权利要求4所述的方法,其特征在于,在根据预先设置的配置信息,确定所述目标字段对应的加密字段,...
【专利技术属性】
技术研发人员:秦朋飞,
申请(专利权)人:北京沃东天骏信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。