一种数据脱敏方法和装置制造方法及图纸

技术编号:22022105 阅读:92 留言:0更新日期:2019-09-04 01:15
本发明专利技术公开了一种数据脱敏方法,预设数据库中各数据对象分别对应的数据脱敏策略;接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。本发明专利技术还公开了一种数据脱敏的装置、存储介质和信息处理装置。

A Data Desensitization Method and Device

【技术实现步骤摘要】
一种数据脱敏方法和装置
本专利技术涉及数据安全
,尤其涉及一种数据脱敏方法和装置。
技术介绍
数据脱敏是通过对某些敏感信息使用数据脱敏策略进行数据的变形,从而实现敏感隐私数据可靠保护的技术。现有实现数据库数据脱敏的技术、方案和产品,往往通过外置数据脱敏服务器或者数据脱敏代理网关(Gateway),以中间件转换的方式进行数据脱敏。数据脱敏服务器先接收客户端的结构化查询语言(SQL,StructuredQueryLanguage)语句数据访问请求信息,并确定本次访问会涉及的敏感数据;然后根据预先设置的数据脱敏策略改写数据访问请求信息,将敏感数据用命令形式进行替换或修改等处理;再将改写的数据访问请求信息发送到数据库;数据库根据改写的数据访问请求信息进行数据查询,并将查询数据中的敏感数据按改写的数据访问请求信息中的指令进行替换或改写等处理;最后数据库将完成数据脱敏后的查询结果通过数据脱敏服务器转发给客户端。采用上述方法进行数据脱敏处理存在一些缺陷和不足,包括:第一、由于SQL语句的复杂性,改写SQL语句数据访问请求信息,往往会造成业务原始请求的处理逻辑发生改变,返回非期望的结果或者执行失败;第二、上述数据脱敏方式往往仅能处理select类的查询请求,对类似createtableAasselectB语句,如果B表设置有数据脱敏策略,而派生出的新表A无法获取数据脱敏策略,就会导致对A表查询时,A表的敏感字段值被泄露,造成安全隐患;第三、上述方法需要在各个数据库引擎上部署数据脱敏算法并生效,不同的数据库引擎的实现方式不同,就会带来版本升级、统一管理维护的困难。因此,如何实现采用原始数据访问请求信息进行数据库访问的前提下,对查询结果集进行数据脱敏,并实现数据脱敏策略的自动继承,同时可以降低维护成本,是亟待解决的问题。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种数据脱敏方法和装置,能实现采用原始数据访问请求信息进行数据库访问的前提下,对查询结果集进行数据脱敏,并实现数据脱敏策略的自动继承,同时可以降低维护成本。为达到上述目的,本专利技术的技术方案是这样实现的:本专利技术实施例提供了一种数据脱敏方法,预设数据库中各数据对象分别对应的数据脱敏策略;所述方法还包括:接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。上述方案中,所述解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象,包括:解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令语句;建立所述操作指令语句的抽象语法树;根据所述抽象语法树,获取所述操作指令语句中操作指令,以及所述操作指令访问所述数据库时基于的所述数据库中的数据对象。上述方案中,所述按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作,包括:所述操作指令为数据查询指令时,采用所述数据查询指令的输出字段所基于的所述数据库中数据对象对应的数据脱敏策略,对所述数据查询指令的输出字段进行数据脱敏处理;将所述数据脱敏处理后的输出字段发送给所述数据请求端。上述方案中,所述按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作,包括:所述操作指令为对数据对象进行的新增和/或修改操作时,将所述操作指令基于的数据对象对应数据脱敏策略,作为所述操作指令进行操作结果的数据脱敏策略;所述操作指令为对数据对象进行的删除操作时,删除所述数据对象对应的数据脱敏策略。上述方案中,所述数据对象包括:表和/或所述表中的字段。本专利技术实施例还提供了一种数据脱敏装置,所述装置包括:设置模块、转发模块、解析模块和数据脱敏模块;其中,所述设置模块,用于预设数据库中各数据对象分别对应的数据脱敏策略;所述方法还包括:所述转发模块,用于接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;所述解析模块,用于解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;所述数据脱敏模块,用于根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。上述方案中,所述解析模块,具体用于:解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令语句;建立所述操作指令语句的抽象语法树;根据所述抽象语法树,获取所述操作指令语句中操作指令,以及所述操作指令访问所述数据库时基于的所述数据库中的数据对象。上述方案中,所述数据脱敏模块,具体用于:所述操作指令为数据查询指令时,采用所述数据查询指令的输出字段所基于的所述数据库中数据对象对应的数据脱敏策略,对所述数据查询指令的输出字段进行数据脱敏处理;将所述数据脱敏处理后的输出字段发送给所述数据请求端。上述方案中,所述数据脱敏模块,具体用于:所述操作指令为对数据对象进行的新增和/或修改操作时,将所述操作指令基于的数据对象对应数据脱敏策略,作为所述操作指令进行操作结果的数据脱敏策略;所述操作指令为对数据对象进行的删除操作时,删除所述数据对象对应的数据脱敏策略。上述方案中,所述数据对象包括:表和/或所述表中的字段。本专利技术实施例还提供了一种存储介质,其上存储由可执行程序,所述可执行程序被处理器执行时实现上述方案中任一项所述数据脱敏方法的步骤。本专利技术实施例还提供了一种信息处理装置,包括处理器、存储器及存储在存储器上并能够有所述处理器运行的可执行程序,所述处理器运行所述可执行程序时执行上述方案中任一项所述数据脱敏方法的步骤。本专利技术实施例所提供的数据脱敏方法和装置,预设数据库中各数据对象分别对应的数据脱敏策略;接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。如此,仅在数据脱敏服务器中设置一个数据脱敏策略就能完成对各数据库数据的数据脱敏,降低了维护成本;并且采用原始数据访问请求信息进行数据库访问,由数据脱敏服务器对数据库访问结果进行数据脱敏,避免了改写原始数据访问请求信息产生的风险;同时,通过操作规则实现操作数据对象,即表和字段等,过程中的数据脱敏策略的继承。附图说明图1为本专利技术实施例数据脱敏方法的流程示意图;图2为本专利技术实施例不同操作指令对应的数据脱敏操作示意图;图3为本专利技术实施例数据查询指令数据脱敏的流程示意图;图4为本专利技术实施例数据脱敏方法交互示意图;图5为本专利技术实施例数据脱敏具体实施流程示意图;图6为本专利技术实施例数据脱敏装置组成结构示意图。具体实施方式本专利技术实施例本文档来自技高网
...

【技术保护点】
1.一种数据脱敏方法,其特征在于,预设数据库中各数据对象分别对应的数据脱敏策略;所述方法还包括:接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。

【技术特征摘要】
1.一种数据脱敏方法,其特征在于,预设数据库中各数据对象分别对应的数据脱敏策略;所述方法还包括:接收数据请求端发送的数据访问请求信息,并向数据库转发所述数据访问请求信息;解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象;根据所述操作指令、和/或基于的数据对象、和/或所述基于的数据对象对应的数据脱敏策略,按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作。2.根据权利要求1所述的方法,其特征在于,所述解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令和所述操作指令访问所述数据库时基于的数据对象,包括:解析所述数据访问请求信息,获取所述数据访问请求信息中的操作指令语句;建立所述操作指令语句的抽象语法树;根据所述抽象语法树,获取所述操作指令语句中操作指令,以及所述操作指令访问所述数据库时基于的所述数据库中的数据对象。3.根据权利要求2所述的方法,其特征在于,所述按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作,包括:所述操作指令为数据查询指令时,采用所述数据查询指令的输出字段所基于的所述数据库中数据对象对应的数据脱敏策略,对所述数据查询指令的输出字段进行数据脱敏处理;将所述数据脱敏处理后的输出字段发送给所述数据请求端。4.根据权利要求2所述的方法,其特征在于,所述按照预设操作规则,对所述数据访问请求信息在数据库中的访问结果进行数据脱敏操作,包括:所述操作指令为对数据对象进行的新增和/或修改操作时,将所述操作指令基于的数据对象对应数据脱敏策略,作为所述操作指令进行操作结果的数据脱敏策略;所述操作指令为对数据对象进行的删除操作时,删除所述数据对象对应的数据脱敏策略。5.根据权利要求1至4任一项所述的方法,其特征在于,所述数据对象包括:表和/或所述表中的字段。6.一种数据脱敏装置,其特征在于,所述装置包括:设置模块、转发模块、解析模块和数据脱敏模块;其中,所述设置模块,用于预设数...

【专利技术属性】
技术研发人员:牛家浩阳方欧阳晓晨张强
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

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

1