一种基于权限码的数据权限控制方法及装置制造方法及图纸

技术编号:33161539 阅读:15 留言:0更新日期:2022-04-22 14:19
本发明专利技术涉及一种基于权限码的数据权限控制方法及装置,将所有数据匹配各种数据权限规则,匹配完毕后依次得到有权限访问某条数据的所有人员的人员身份标识,对这些人员身份标识生成一个唯一的权限码,把这个权限码存储到该条数据的固定字段上;当用户查询数据的时候,先获取与当前用户身份标识相关的所有权限码,然后再查询这些权限码关联的所有数据,并把结果返回给用户。本发明专利技术通过生成可以在多条数据之间共用的权限码,使得数据管理的效率跟数据的量级无直接强相关性,相对于传统的数据权限控制方法,数据管理性能得到了极大的提升。数据管理性能得到了极大的提升。数据管理性能得到了极大的提升。

【技术实现步骤摘要】
一种基于权限码的数据权限控制方法及装置


[0001]本专利技术涉及数据管理
,尤其涉及一种基于权限码的数据权限控制方法及装置。

技术介绍

[0002]在产业互联网的云计算系统中,一套IT系统要服务于多个租户,每个租户都有自己的业务场景和数据管控策略,这些场景和管控策略通常有很大差异并且还涉及对海量数据的复杂权限设置。目前,市面上现有的数据权限控制方法,无法满足高灵活度的数据管控定制需求;在面对海量数据和复杂的数据权限控制规则时,数据查询效率低,无法满足高并发、高可用的技术指标;并且随着业务发展,数据权限控制规则迭代和数据量不断增加,现有的数据权限控制方法无法实现数据和管控规则的高效实时更新,也无法持续保持最初可预期的性能,无法保证系统响应时间不随数据量级和规则复杂度的增加而变长。

技术实现思路

[0003]基于现有技术上述的一个或多个问题,本专利技术提供了一种基于权限码的数据权限控制方法及装置,通过灵活设置数据权限规则以及利用可在多条数据之间共用的权限码,使得数据权限控制和管理更加灵活和高效,特别是使数据查询效率与数据的量级无直接相关性,相较于传统的数据权限控制方法,在效率上得到了极大的提升,也降低了对于系统硬件性能的要求,节约了成本。
[0004]为了达到上述目的,本专利技术提供了一种基于权限码的数据权限控制方法,包括下述步骤:S1获取第一数据集合中的第一数据,根据第一数据权限规则集合中的一个或多个数据权限规则对第一数据生成第一人员身份标识集合,并根据第一人员身份标识集合生成第一权限码,所述数据权限规则包括人员身份标识、数据项目和数据范围之间的映射关系;S2将第一人员身份标识集合和第一权限码建立第一关联关系并储存,并将第一权限码和第一数据建立第二关联关系并储存;S3获取第一数据集合中的下一数据,返回S1,直至所述第一数据集合中的全部数据遍历完成;进一步的,还包括下述步骤:S4根据访问人员的一个或多个目标人员身份标识获取一个或多个目标人员身份标识集合;S5根据所述一个或多个目标人员身份标识集合获取与其存在第一关联关系的一个或多个目标权限码,之后根据所述一个或多个目标权限码获取与其存在第二关联关系的目标数据;S6返回所述目标数据。
[0005]进一步的,所述第一数据集合是根据所述第一数据权限规则集合获取的,具体包
括:获取第一数据权限规则集合中的一个或多个数据权限规则所包含的一个或多个数据项目,将其去重后合并为数据项目集合,依次获取所述数据项目集合中每一个数据项目所包含的数据,将其去重后合并为第一数据集合。
[0006]进一步的,其特征在于,所述根据第一数据权限规则集合中的一个或多个数据权限规则对第一数据生成第一人员身份标识集合包括:依次判断所述第一数据是否与所述第一数据权限规则集合中的每一个数据权限规则的数据范围相匹配,若匹配则提取所述判断的该数据权限规则的第一人员身份标识,直至所述第一数据权限规则集合中的所有数据权限规则遍历完成,之后将所述提取的所有的第一人员身份标识去重后合并为第一人员身份标识集合。
[0007]进一步的,其特征在于,所述根据第一人员身份标识集合生成第一权限码包括:将所述第一人员身份标识集合中所有的人员身份标识排序后用哈希算法生成一个唯一标识作为第一权限码。
[0008]进一步的,其特征在于,还包括下述步骤:若收到变更消息,则根据变更消息生成增量数据集合,将所述增量数据集合替代所述第一数据集合重复执行步骤S1至S3,所述变更消息包括数据权限规则新增消息、数据权限规则修改消息、数据权限规则删除消息、数据新增消息和数据修改消息;所述根据变更消息生成增量数据集合包括:若变更消息为数据权限规则新增消息、数据权限规则修改消息和数据权限规则删除消息中的一项或多项,则获取变更消息中包含的一个或多个数据权限规则包含的一个或多个数据项目,将其去重后合并为增量数据项目集合,依次获取增量数据项目集合中每一个数据项目所包含的增量数据,将所述依次获取的全部增量数据去重后合并为增量数据集合;若变更消息为数据新增消息和/或数据修改消息,则获取变更消息中包含的一条或多条数据组成增量数据集合。
[0009]进一步的,其特征在于,所述根据访问人员的一个或多个目标人员身份标识获取一个或多个目标人员身份标识集合包括:遍历查询数据库中存储的人员身份标识集合,若所述遍历查询的人员身份标识集合中至少包含了一个目标人员身份标识则获取该目标人员身份标识集合。
[0010]进一步的,所述数据权限规则还包括有效时间,所述方法还包括下述步骤:按周期遍历查询数据库中的所有数据权限规则,若所述查询的数据权限规则的有效时间超期,则发出针对所述查询的数据权限规则的数据权限规则删除消息;按周期遍历查询数据库中的所有权限码,依次判断所述查询的权限码是否与数据库中至少一数据存在第二关联关系;若存在则查询下一权限码;若不存在,则将该权限码删除。
[0011]根据本专利技术的第二个方面,一种基于权限码的数据权限控制装置,包括权限码生成模块、权限码存储模块、权限查询模块以及事件处理模块,其中:所述权限码生成模块用于获取第一数据集合中的第一数据,根据第一数据权限规则集合中的一个或多个数据权限规则对第一数据生成第一人员身份标识集合,并根据第一
人员身份标识集合生成第一权限码,所述数据权限规则包括人员身份标识、数据项目和数据范围之间的映射关系;所述权限码存储模块用于将第一人员身份标识集合和第一权限码建立第一关联关系并储存,并将第一权限码和所述第一数据建立第二关联关系并储存;所述权限码查询模块用于根据访问人员的一个或多个目标人员身份标识获取一个或多个目标人员身份标识集合;根据所述一个或多个目标人员身份标识集合获取与其存在第一关联关系的一个或多个目标权限码,之后根据所述一个或多个目标权限码获取与其存在第二关联关系的目标数据;返回所述目标数据;所述事件处理模块用于若收到变更消息,则根据变更消息生成增量数据集合。
[0012]根据本专利技术的第三个方面,提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本专利技术第一个方面所述的方法。
[0013]综上所述,本专利技术提供了一种基于权限码的数据权限控制方法及装置,将所有数据匹配各种数据权限规则,匹配完毕后得到针对每一数据的所有有权限访问该条数据的人员的身份标识,将这些人员身份标识组成集合,生成一个唯一的权限码,再把这个权限码存储到所对应的该数据的固定字段上;当用户(访问人员)查询数据的时候,先获取与当前用户的人员身份标识相关的所有权限码,然后再查询这些权限码关联的所有数据,并把结果返回给用户。
[0014]本专利技术通过仅将权限码与人员身份标识集合进行关联的设计,生成可以在多条数据之间共用的权限码,使得数据管理的效率跟数据的量级无直接强相关性,相对于传统的数据权限控制方法,数据管理性能得到了极大的提升。
[0015]本专利技术具有以下有益的技术效果: (1)通过生成可以在多数据之间共用的权限码,并基于权限码设计数据权限控制方法,使得数据权本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于权限码的数据权限控制方法,其特征在于,包括下述步骤:S1获取第一数据集合中的第一数据,根据第一数据权限规则集合中的一个或多个数据权限规则对第一数据生成第一人员身份标识集合,并根据第一人员身份标识集合生成第一权限码,所述数据权限规则包括人员身份标识、数据项目和数据范围之间的映射关系;S2将第一人员身份标识集合和第一权限码建立第一关联关系并储存,并将第一权限码和第一数据建立第二关联关系并储存;S3获取第一数据集合中的下一数据,返回S1,直至所述第一数据集合中的全部数据遍历完成。2.根据权利要求1所述的方法,其特征在于,还包括下述步骤:S4根据访问人员的一个或多个目标人员身份标识获取一个或多个目标人员身份标识集合;S5根据所述一个或多个目标人员身份标识集合获取与其存在第一关联关系的一个或多个目标权限码,之后根据所述一个或多个目标权限码获取与其存在第二关联关系的目标数据;S6返回所述目标数据。3.根据权利要求1或2所述的方法,其特征在于,所述第一数据集合是根据所述第一数据权限规则集合获取的,具体包括:获取第一数据权限规则集合中的一个或多个数据权限规则所包含的一个或多个数据项目,将其去重后合并为数据项目集合,依次获取所述数据项目集合中每一个数据项目所包含的数据,将其去重后合并为第一数据集合。4.根据权利要求1或2所述的方法,其特征在于,所述根据第一数据权限规则集合中的一个或多个数据权限规则对第一数据生成第一人员身份标识集合包括:依次判断所述第一数据是否与所述第一数据权限规则集合中的每一个数据权限规则的数据范围相匹配,若匹配则提取所述判断的该数据权限规则的第一人员身份标识,直至所述第一数据权限规则集合中的所有数据权限规则遍历完成,之后将所述提取的所有的第一人员身份标识去重后合并为第一人员身份标识集合。5.根据权利要求1或2所述的方法,其特征在于,所述根据第一人员身份标识集合生成第一权限码包括:将所述第一人员身份标识集合中所有的人员身份标识排序后用哈希算法生成一个唯一标识作为第一权限码。6.根据权利要求1或2所述的方法,其特征在于,还包括下述步骤:若收到变更消息,则根据变更消息生成增量数据集合,将所述增量数据集合替代所述第一数据集合重复执行步骤S1至S3,所述变更消息包括数据权限规则新增消息、数据权限规则修改消息、数据权限规则删除消息、数据新增消息和数据修改消息;所述根据变更消息生成增量数据集合包括:若变更消息为数据权限规则新...

【专利技术属性】
技术研发人员:李磊郑子阳
申请(专利权)人:北京纷扬科技有限责任公司
类型:发明
国别省市:

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

1