一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据库敏感信息动态脱敏方法及系统与流程

2022-06-16 07:26:37 来源:中国专利 TAG:


1.本发明涉及数据脱敏技术领域,尤其涉及一种数据库敏感信息动态脱敏方法及系统。


背景技术:

2.数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护,在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试或展示使用。现有技术中,通常采用在数据库脱敏系统或数据库审计系统中,指定数据库包含敏感信息的表名和字段,审计系统使用代理或者流量镜像的方式获取数据进行审计,数据库脱敏系统通过网关的方式获取访问请求,当流量或请求中匹配到敏感信息的表名和字段,触发审计规则和查询结果的脱敏规则的脱敏方式。
3.但该脱敏方式只能限定使用如select name from users语法从数据库指定的表中查询指定的字段,对于查询字段的变形存在则无法有效识别,例如:
4.1、使用select name from v_users(视图v_users包含了表users)自定义视图方式查询无法辨识和拦截;
5.2、使用select name as patname from v_users(视图中将name字段变形为patname)等无法辨识拦截;
6.3、多表关联查询select a.id as patid,b.name as ypname fromusers a,ypadv b where a.id=b.patid等自定义语句中的错误辨识和误拦截(user表中有id和name,组合时误将yp表中的ypname识别为users相关的name);
7.4、自定义存储过程proc_getadvlist(含有select a.id aspatid,a.name as patname,b.name as ypname from users a,ypadvb where a.id=b.patid)等无法识别;
8.可以看出,现有审计系统和动态脱敏系统只能识别到已定义的表和字段,无法对各种未梳理自定义或新增的、开发调试等产生的包含敏感信息的对象进行自动化识别。
9.另外,由于现有技术使用统一网关静态识别到对象时就立即执行强制脱敏,例如:
10.select a.id as patid,a.name as patname,a.idcard aspatidcard,b.name as ypname
11.into#temp
12.from users a,ypadv b
13.where a.id=b.patid and b.ypcode=’010112’14.if(判别patidcard=女)
15.{业务逻辑}
16.select a.patid,d.advexectime
17.from#temp c,advexec d
18.where c.patname=d.patname
19.and d.execflag=1
20.导致name、idcard等数据在select时就已进行强制脱敏,无法参与后续的各种业务逻辑运算。


技术实现要素:

21.针对现有技术中存在的问题,本发明提供一种数据库敏感信息动态脱敏方法,针对一数据库,预先定义包含敏感信息的敏感表名、敏感字段以及所述敏感字段对应的源数据规则;
22.则所述数据库敏感信息动态脱敏方法包括:
23.步骤s1,扫描所述数据库的数据库对象,提取出包含所述敏感表名和所述敏感字段的所述数据库对象作为已识别对象;
24.步骤s2,对所述已识别对象的操作过程进行跟踪,以判断所述操作过程的操作结果中是否包含的重命名字段与提取出的所述敏感字段具有关联关系:
25.若否,则转向步骤s4;
26.若是,则转向步骤s3;
27.步骤s3,根据所述关联关系关联的所述敏感字段对应的所述源数据规则和所述重命名字段生成所述重命名字段对应的衍生规则;
28.步骤s4,在由所述数据库中输出的数据触发到所述源数据规则或所述衍生规则时,对调用的数据相应进行脱敏处理。
29.优选的,步骤s2包括:
30.步骤s21,对所述已识别对象的操作过程进行跟踪,以判断所述操作过程的所述操作结果中包含的所述重命名字段是否为提取出的所述敏感字段变形得到:
31.若是,则转向步骤s22;
32.若否,则转向步骤s23;
33.步骤s22,输出所述操作结果中包含的所述重命名字段与提取出的所述敏感字段具有所述关联关系的判断结果,随后转向所述步骤s3;
34.步骤s23,输出所述操作结果中包含的所述重命名字段与提取出的所述敏感字段不具有所述关联关系的判断结果,随后转向所述步骤s4。
35.优选的,所述步骤s21中,采用语义识别的方式判断所述操作过程的所述操作结果中包含的所述重命名字段是否为提取出的所述敏感字段变形得到。
36.优选的,执行所述步骤s3之后还包括:
37.根据外部的一修改指令以对所述衍生规则进行修改得到修改规则;
38.则所述步骤s4中,在由所述数据库中输出的数据触发到所述源数据规则或所述修改规则时,对调用的数据相应进行脱敏处理。
39.优选的,所述对所述衍生规则进行修改包括在所述衍生规则中添加所述修改指令中包含的自定义规则,以得到所述修改规则;
40.所述修改规则中,所述自定义规则的优先级高于所述衍生规则。
41.优选的,执行所述步骤s3之后,还包括将所述衍生规则与所述源数据规则进行关联,使得所述衍生规则与关联的所述源数据规则的脱敏方式保持一致。
42.本发明还提供一种数据库敏感信息动态脱敏系统,应用上述的数据库敏感信息动态脱敏方法,所述数据库敏感信息动态脱敏系统包括:
43.存储模块,用于保存所述数据库中预先定义的包含敏感信息的敏感表名、敏感字段以及所述敏感字段对应的源数据规则;
44.扫描模块,连接所述存储模块,用于扫描所述数据库的数据库对象,提取出包含所述敏感表名和所述敏感字段的所述数据库对象作为已识别对象;
45.识别模块,连接所述扫描模块,用于对所述已识别对象的操作过程进行跟踪,以在所述操作过程的操作结果中包含的重命名字段与提取出的所述敏感字段具有关联关系时输出一识别信号;
46.生成模块,分别连接所述存储模块和所述识别模块,用于根据所述识别信号、所述关联关系关联的所述敏感字段对应的所述源数据规则和所述重命名字段生成所述重命名字段对应的衍生规则并保存至所述存储模块;
47.脱敏模块,连接所述存储模块,用于在由所述数据库中输出的数据触发到所述源数据规则或所述衍生规则时,对调用的数据相应进行脱敏处理。
48.优选的,所述识别模块包括:
49.跟踪单元,用于对所述已识别对象的操作过程进行跟踪,以在所述操作过程的所述操作结果中包含的所述重命名字段为提取出的所述敏感字段变形得到时输出一跟踪结果;
50.输出单元,连接所述跟踪单元,用于根据所述跟踪结果输出表征所述操作结果中包含的所述重命名字段与提取出的所述敏感字段具有关联关系的所述识别信号。
51.优选的,所述跟踪单元中,采用语义识别的方式判断所述操作过程的所述操作结果中包含的所述重命名字段是否为提取出的所述敏感字段变形得到。
52.优选的,还包括一修改端口,连接所述存储模块,用于接收并根据外部的一修改指令以对所述衍生规则进行修改得到修改规则;
53.则所述脱敏模块在由所述数据库中输出的数据触发到所述源数据规则或所述修改规则时,对调用的数据相应进行脱敏处理。
54.上述技术方案具有如下优点或有益效果:
55.1)能够有效识别数据库中各种未梳理自定义或新增或开发调试等产生的包含敏感信息的对象,进而实现更为全面、准确的脱敏处理,有效提升数据库中敏感隐私数据的可靠保护性;
56.2)能够有效解决多表关联查询中识别同一语句中敏感字段和敏感字段错误关联导致的错误识别和错误处置的问题;
57.3)相比于现有技术中采用统一网关对静态识别到的对象均进行强制脱敏的方式,本技术方案在数据由数据库中输出触发源数据规则或衍生规则时进行脱敏,不影响中间过程的业务逻辑运算,实用性强。
附图说明
58.图1为本发明的较佳的实施例中,一种数据库敏感信息动态脱敏方法的流程示意图;
59.图2为本发明的较佳的实施例中,步骤s2的子流程示意图;
60.图3为本发明的较佳的实施例中,一种数据库敏感信息动态脱敏系统的结构示意图。
具体实施方式
61.下面结合附图和具体实施例对本发明进行详细说明。本发明并不限定于该实施方式,只要符合本发明的主旨,则其他实施方式也可以属于本发明的范畴。
62.本发明的较佳的实施例中,基于现有技术中存在的上述问题,现提供一种数据库敏感信息动态脱敏方法,针对一数据库,预先定义包含敏感信息的敏感表名、敏感字段以及敏感字段对应的源数据规则;
63.如图1所示,则数据库敏感信息动态脱敏方法包括:
64.步骤s1,扫描数据库的数据库对象,提取出包含敏感表名和敏感字段的数据库对象作为已识别对象;
65.步骤s2,对已识别对象的操作过程进行跟踪,以判断操作过程的操作结果中是否包含的重命名字段与提取出的敏感字段具有关联关系:
66.若否,则转向步骤s4;
67.若是,则转向步骤s3;
68.步骤s3,根据关联关系关联的敏感字段对应的源数据规则和重命名字段生成重命名字段对应的衍生规则;
69.步骤s4,在由数据库中输出的数据触发到源数据规则或衍生规则时,对调用的数据相应进行脱敏处理。
70.具体地,本实施例中,上述数据库对象包括但不限于自定义视图、方法及存储过程等。上述已识别对象不仅包含敏感字段,还需同时包含该敏感字段对应的敏感表名,以避免出现误提取现象。如:数据库中表a为敏感表名,其包含字段name,而数据库表b为非敏感表名,其同样包含的字段name。若仅基于敏感表名进行数据库对象提取,则将包含表a的数据库对象均识别为已识别对象,但表a中的字段name可能并非敏感字段,后续也无需进行脱敏,则导致误提取现象且增加了不必要的数据处理压力。若表a中的字段name为敏感字段,表b中的字段name为非敏感字段,仅基于敏感字段进行数据库对象提取,则会出现将包含字段name的数据库对象均识别为已识别对象,但表b中虽然包含字段name,但由于其并非敏感字段,后续也无需进行脱敏,则导致误提取现象且增加了不必要的数据处理压力。
71.在提取出包含敏感表名和敏感字段的数据库对象作为已识别对象后,本发明的较佳的实施例中,如图2所示,步骤s2包括:
72.步骤s21,对已识别对象的操作过程进行跟踪,以判断操作过程的操作结果中包含的重命名字段是否为提取出的敏感字段变形得到:
73.若是,则转向步骤s22;
74.若否,则转向步骤s23;
75.步骤s22,输出操作结果中包含的重命名字段与提取出的敏感字段具有关联关系的判断结果,随后转向步骤s3;
76.步骤s23,输出操作结果中包含的重命名字段与提取出的敏感字段不具有关联关
系的判断结果,随后转向步骤s4。
77.本发明的较佳的实施例中,步骤s21中,采用语义识别的方式判断操作过程的操作结果中包含的重命名字段是否为提取出的敏感字段变形得到。
78.具体地,本实施例中,上述对已识别对象的操作过程进行跟踪包括但不限于跟踪数据库对象的字段名称的as重命名、字段与表之间的对应关系、敏感字段重命名后的字段后续关联查询(包括再次重命名、字段与临时表之间的对应关系)的处理。如预定义的敏感字段为name,在调用该敏感字段并缓存在数据库的临时表temp1中时,可能会将其进行as重命名为patname,进一步调用该重命名后的patname并缓存在数据库的临时表temp2中时,可能会将其再次重命名为pname。若由数据库中输出的数据包括patname或pname时,采用现有技术中仅匹配预定义的敏感字段的脱敏信息是被方式时,该数据无法被识别。基于此,本实施例中,通过根据上述调用缓存的操作过程,采用语义识别的方式可以识别出,无论patname还是pname均与敏感字段name存在关联关系,若操作结果需要输出temp2表中pname,temp1中的patname仅作为中间过程数据,由于temp1中的patname并不作为输出的操作结果,即使其与敏感字段name具有关联关系,也可以不作脱敏处理,只需针对temp2中的pname生成相应的衍生规则即可。
79.本发明的较佳的实施例中,执行步骤s3之后,还包括将衍生规则与源数据规则进行关联,使得衍生规则与关联的源数据规则的脱敏方式保持一致。
80.具体地,本实施例中,以针对temp2中的pname生成相应的衍生规则为例,若敏感字段name对应的源数据规则的脱敏方式为将敏感字段name的值如张三三,脱敏为张**,则衍生规则将敏感字段pname的值采用同样的脱敏方式,即保留姓氏,名无论是几个字均采用*代替。
81.进一步地,可以持续监测源数据规则的脱敏方式的变更情况,若源数据规则出现脱敏方式变更时,其关联的衍生规则也相应变更,以与源数据规则的脱敏方式保持一致。
82.本发明的较佳的实施例中,执行步骤s3之后还包括:
83.根据外部的一修改指令以对衍生规则进行修改得到修改规则;
84.则步骤s4中,在由数据库中输出的数据触发到源数据规则或修改规则时,对调用的数据相应进行脱敏处理。
85.具体地,本实施例中,在实际应用过程中,若由于业务需要,需要单独配置衍生规则时,如若敏感字段name对应的源数据规则的脱敏方式为将敏感字段name的值如张三三,脱敏为张**,衍生规则将敏感字段pname的值如张三三,脱敏为张*三,此时可以根据需求对衍生规则进行单独配置。
86.本发明的较佳的实施例中,对衍生规则进行修改包括在衍生规则中添加修改指令中包含的自定义规则,以得到修改规则;
87.修改规则中,自定义规则的优先级高于衍生规则。
88.具体地,本实施例中,通过增加自定义规则的方式,不影响原有衍生规则与对应的源数据规则保持一致的逻辑,只需对应进行脱敏优先级配置即可。若仅一段时间需要自定义衍生规则,则无需对应调整源数据规则,只需要将自定义规则的脱敏优先级配置为高于衍生规则即可,若一段时间不需要自定义衍生规则,可以将该自定义衍生规则删除,或者将衍生规则的脱敏优先级配置为高于自定义衍生规则,后续衍生规则的使用不受影响,以便
后续再次启用自定义衍生规则,使得操作更为灵活且方便。
89.可以理解的是,若敏感字段发生变更,使得衍生规则中原有的敏感字段变更为非敏感字段时,则删除该衍生规则。
90.本发明的较佳的实施例中,在数据库新启用时,步骤s1中扫描数据库对象为全局扫描,在数据库的后续运行过程中,可以根据需求配置相应的扫描周期进行数据库对象扫描,以更新衍生规则;或者可以监测数据库对象的变更,部分扫描数据对象即可,以减少扫描耗时,提升扫描速率,进而提升动态脱敏速率。
91.本发明还提供一种数据库敏感信息动态脱敏系统,应用上述的数据库敏感信息动态脱敏方法,如图3所示,数据库敏感信息动态脱敏系统包括:
92.存储模块1,用于保存数据库中预先定义的包含敏感信息的敏感表名、敏感字段以及敏感字段对应的源数据规则;
93.扫描模块2,连接存储模块1,用于扫描数据库的数据库对象,提取出包含敏感表名和敏感字段的数据库对象作为已识别对象;
94.识别模块3,连接扫描模块2,用于对已识别对象的操作过程进行跟踪,以在操作过程的操作结果中包含的重命名字段与提取出的敏感字段具有关联关系时输出一识别信号;
95.生成模块4,分别连接存储模块1和识别模块3,用于根据识别信号、关联关系关联的敏感字段对应的源数据规则和重命名字段生成重命名字段对应的衍生规则并保存至存储模块1;
96.脱敏模块5,连接存储模块1,用于在由数据库中输出的数据触发到源数据规则或衍生规则时,对调用的数据相应进行脱敏处理。
97.本发明的较佳的实施例中,识别模块3包括:
98.跟踪单元31,用于对已识别对象的操作过程进行跟踪,以在操作过程的操作结果中包含的重命名字段为提取出的敏感字段变形得到时输出一跟踪结果;
99.输出单元32,连接跟踪单元31,用于根据跟踪结果输出表征操作结果中包含的重命名字段与提取出的敏感字段具有关联关系的识别信号。
100.本发明的较佳的实施例中,跟踪单元31中,采用语义识别的方式判断操作过程的操作结果中包含的重命名字段是否为提取出的敏感字段变形得到。
101.本发明的较佳的实施例中,还包括一修改端口6,连接存储模块1,用于接收并根据外部的一修改指令以对衍生规则进行修改得到修改规则;
102.则脱敏模块5在由数据库中输出的数据触发到源数据规则或修改规则时,对调用的数据相应进行脱敏处理。
103.以上所述仅为本发明较佳的实施例,并非因此限制本发明的实施方式及保护范围,对于本领域技术人员而言,应当能够意识到凡运用本说明书及图示内容所作出的等同替换和显而易见的变化所得到的方案,均应当包含在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献