一种基于血缘分析的数据脱敏方法及具有其的系统与流程

文档序号:34851683发布日期:2023-07-22 14:50阅读:66来源:国知局
一种基于血缘分析的数据脱敏方法及具有其的系统与流程

本发明涉及数据脱敏,尤其是涉及一种基于血缘分析的数据脱敏方法及具有其的系统。


背景技术:

1、随着技术发展,用户在互联网上产生的数据越来越多,用户的个人信息也变得越来越敏感。因此,企业在使用数据进行合理分析的同时,需要对用户的关键信息进行脱敏,保护用户的个人信息不泄漏。

2、现有的脱敏方案中,大多是从实际存储的数据进行脱敏的方向去考虑的。这样做的优势是脱敏后的数据更加安全,但劣势是脱敏规则的配置到完全生效,根据数据量和方案原理会有不同的延迟,二是无法满足对数据源处理时,生成中间结果,以及根据中间结果创建需要的分析图表的脱敏需求。

3、基于上述原因,亟需一种能够在数据处理时,不进行脱敏,仅在展示时脱敏的脱敏方法。


技术实现思路

1、本发明提供一种基于血缘分析的数据脱敏方法及具有其的系统,解决现有技术中数据量和方案原理会有不同的延迟,且无法满足对数据源处理时,生成中间结果,以及根据中间结果创建需要的分析图表的脱敏需求。

2、本技术的第一方面提供一种基于血缘分析的数据脱敏方法,其特征在于,包括:

3、在数据库中建立第一表和第二表,其中,所述第一表表示脱敏配置,所述第一表包括标识工作表和合表唯一id的字段、存储用户唯一id的字段、是否需要脱敏的字段、编辑脱敏配置的字段和存储脱敏配置的字段,所述第二表表示存储表字段之间的血缘关系,包括计算源表的唯一id,计算源字段的唯一id,计算结果工作表的唯一id,计算结果字段的唯一id;

4、建立第三表,并将所述第三表存储在系统中,在所述系统中为所述第三表配置脱敏配置,其中,所述第三表包括合表和图表;

5、将所述第三表的脱敏配置存储在所述第一表中;

6、启动所述系统时,扫描所述第三表,并将扫描结果记录在所述第二表中,以及将所述第三表中的不能进行脱敏配置的字段记录在所述第一表中;

7、建立第四表或修改第三表时,判断用户当前的操作如果继续进行下去,是否会导致脱敏字段上的原始数据泄露,其中,所述第四表表示用户新建的合表或图表;

8、若有,则禁止操作,若没有,则允许建立第四表或修改第三表,并将所述第一表中的脱敏配置继承至建立第四表或修改第三表中。

9、可实施的一种方式中,所述在数据库中建立第一表和第二表的步骤,包括:

10、所述存储用户唯一id的字段,表示每个用户对所述第一表的权限为所述第一表的一条数据;

11、所述编辑脱敏配置的字段,表示用户是否能够编辑所述第一表脱敏配置的字段;

12、所述存储脱敏配置的字段,表示用于存储脱敏配置的字段;

13、所述计算源表的唯一id,表示由第三方数据源构成的工作表的唯一id;

14、所述计算结果工作表的唯一id,表示所述第三方数据源生成中间结果表的唯一id。

15、可实施的一种方式中,所述建立第三表,并将所述第三表存储在系统中,在所述系统中为所述第三表配置脱敏配置的步骤,包括:

16、为所述第三表建立符合所述第一表规则的脱敏配置。

17、可实施的一种方式中,所述将所述第三表的脱敏配置存储在所述第一表中的步骤,包括:

18、若展示所述第三表的情况下,在所述第一表中调取所述第三表的脱敏配置;

19、基于所述第一表中的所述第三表对应的脱敏配置,展示所述第三表。

20、可实施的一种方式中,所述启动所述系统时,扫描所述第三表,并将扫描结果记录在所述第二表中,以及将所述第三表中的不能进行脱敏配置的字段记录在所述第一表中的步骤,包括:

21、建立和/或更新所述工作表字段之间的血缘关系;

22、判断构成所述合表的链路中每个表里的字段是否会导致脱敏泄露数据;

23、若存在会导致脱敏泄露数据,将字段标记为禁止进行脱敏配置,存储在第一表中,并在所述第一表中所有使用了该字段的所述第三表的配置里,添加禁止该字段脱敏的标记。

24、可实施的一种方式中,所述启动所述系统时,扫描所述第三表,并将扫描结果记录在所述第二表中,以及将所述第三表中的不能进行脱敏配置的字段记录在所述第一表中的步骤之后,还包括:

25、用户调整第三表中字段对应的脱敏配置时,根据所述第二表中记录的计算血缘关系,将该脱敏配置由所述第一表继承到下游所有使用了该字段的表中,其中,所述调整脱敏配置包括创建、修改和删除脱敏配置中的至少一种调整方式。

26、可实施的一种方式中,在所述大数据分析工具程序中进行所述第一表、所述第二表和所述第三表的配置,将所述第一表、所述第二表和所述第三表转换成spark sql语句,提供给spark执行,生成符合用户要求的图标或合表;

27、基于antlr语法分析器,解析spark获取到spark sql使用的数据表、字段,以及计算逻辑,其中,所述数据表,表示工作表或合表。

28、本技术的第二方面提供一种基于血缘分析的数据脱敏系统,应用于前述的基于血缘分析的数据脱敏方法,所述系统包括:

29、第一建立单元,用于在数据库中建立第一表和第二表,其中,所述第一表表示脱敏配置,所述第一表包括标识工作表和合表唯一id的字段、存储用户唯一id的字段、是否需要脱敏的字段、编辑脱敏配置的字段和存储脱敏配置的字段,所述第二表表示存储表字段之间的血缘关系,包括计算源表的唯一id,计算源字段的唯一id,计算结果工作表的唯一id,计算结果字段的唯一id;

30、第二建立单元,用于建立第三表,并将所述第三表存储在系统中,在所述系统中为所述第三表配置脱敏配置,其中,所述第三表包括合表和图表;

31、存储单元,用于将所述第三表的脱敏配置存储在所述第一表中;

32、扫描单元,用于启动所述系统时,扫描所述第三表,并将扫描结果记录在所述第二表中,以及将所述第三表中的不能进行脱敏配置的字段记录在所述第一表中;

33、第一判断单元,用于建立第四表或修改第三表时,判断用户当前的操作如果继续进行下去,是否会导致脱敏字段上的原始数据泄露,其中,所述第四表表示用户新建的合表或图表;

34、第二判断单元,用于若有,则禁止操作,若没有,则允许建立第四表或修改第三表,并将所述第一表中的脱敏配置继承至建立第四表或修改第三表中。

35、本技术第三方面提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前述的基于血缘分析的数据脱敏方法。

36、本技术第四方面提供一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现前述的基于血缘分析的数据脱敏方法的步骤。

37、本发明有益效果:

38、本技术提供一种基于血缘分析的数据脱敏方法及具有其的系统,首先在数据库中建立第一表和第二表,形成建立脱敏方法中存储脱敏配置和权限配置的表,以及用来存储表字段之间的血缘关系。接下来,在系统中建立第三表,第三表用来表示用户建立的合表或图表,为第三表配置对应的脱敏配置。这样,即可将第三表的脱敏配置存储在第一表中,以便后续展示第三表时调用。另外,在启动系统时,扫描第三表,并将扫描的结果记录在第二表中,并且将第三表中的不能进行脱敏配置的字段记录在第一表中。最后,建立第四表或修改第三表时,判断用户当前的操作如果继续进行下去,是否会导致脱敏字段上的原始数据泄露,若有,则禁止操作,若没有,则允许建立或修改,并将所述第一表中的脱敏配置继承至建立第四表或修改第三表。通过上述方案,为新建的第三表以及第四表分别建立脱敏配置,每次建立、修改或删除第三表和第四表的链路上每个表的脱敏配置时,都通过第二表或类似的关联记录表中的字段向前追溯到最初配置的位置并确定如何脱敏。并且针对每个通过追溯确定需要继承脱敏配置的第三表或第四表均形成对应的脱敏配置,因此能够加快高频操作(查询)的速度,避免查询时需要递归查询其他表的配置。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1