System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及权限控制,更确切地说,它涉及一种基于apisix的数据仓库数据权限控制方法。
技术介绍
1、传统的数据权限控制通常依赖于基于角色的访问控制(role-based accesscontrol, rbac)模型。这种模型通过将用户分配到特定的角色,并为这些角色赋予一定的权限来管理数据访问。虽然rbac模型在一定程度上简化了权限管理,但它在处理复杂、多样化的数据权限需求时存在不足。尤其是在集团型企业的多数据仓库环境下,rbac模型缺乏对资源层面细粒度数据权限的控制能力。
2、具体来说,rbac模型主要聚焦于角色与权限的对应关系,缺乏对具体数据资源(如数据表、列、文档或记录)的细粒度权限校验。它无法根据用户的角色动态调整对具体数据资源的访问权限,也无法精确控制到记录级别。这意味着,rbac模型难以实现对不同数据服务中的多样化数据权限字段的统一校验和管理。部分基于rbac的改进模型虽然对数据权限有控制,但是控制的数据字段和控制模式单一,无法满足不同的数据库管理系统数据服务对不同权限字段及位置进行权限控制的需求。
3、同时,随着企业规模的扩大,用户数和权限种类不断增加,权限管理的复杂性和维护成本也随之增加。特别是当多个数据仓库系统共存时,rbac系统的跨系统权限配置和维护工作量巨大。
4、因此,在每个数据仓库都提供各异数据服务的集团型企业环境中,如何提供统一的数据出口,实现对不同数据服务的数据权限字段进行精细化控制,如何克服传统rbac方案无法进行资源级数据权限校验的不足,以及如何降低权限配
技术实现思路
1、本专利技术的目的是针对现有技术的不足,提出了一种基于apisix的数据仓库数据权限控制方法。
2、第一方面,提供了一种基于apisix的数据仓库数据权限控制方法,包括:
3、s1、写入网关配置信息;所述网关配置信息包括预设的业务分组、路由分组、访问关系和用户信息;
4、s2、接收用户访问请求;所述用户访问请求包括请求头、请求路径和目标用户所请求的数据权限参数,所述请求头包括目标用户的认证信息,所述请求路径包括目标数据服务;
5、s3、根据所述用户访问请求,读取所述网关配置信息,获取目标用户的业务分组,并进行权限判断,包括:
6、根据访问关系,判断目标用户的业务分组是否允许访问路由分组下的目标数据服务;
7、判断目标用户所请求的数据权限参数是否在路由分组的数据权限范围内;
8、s4、在权限判断的条件均满足时,允许目标用户访问所述目标数据服务。
9、作为优选,s1包括:
10、s101、通过各数据仓库api,获取各数据服务的信息,所述数据服务的信息包括数据服务的数据范围参数和业务属性;
11、s102、根据所述数据服务的数据范围参数创建路由分组;
12、s103、根据所述数据服务的业务属性创建业务分组;
13、s104、获取用户信息;
14、s105、根据需求确定访问关系;
15、s106、将所述路由分组、业务分组、用户信息和所述访问关系写入网关。
16、作为优选,s2中,所述目标用户所请求的数据权限参数为目标用户的全部数据权限参数或目标用户的部分数据权限参数。
17、作为优选,s104中,所述获取用户信息包括:通过各数据仓库api采集用户信息和/或手动创建用户信息。
18、作为优选,s2中,所述用户访问请求还包括请求体和请求参数,所述目标用户所请求的数据权限参数位于所述请求体或请求参数中,所述数据权限参数为单个值或列表。
19、第二方面,提供了一种基于apisix的数据仓库数据权限控制装置,用于执行第一方面任一所述的方法,所述装置包括网关和管理平台;
20、其中,所述管理平台用于向网关写入网关配置信息;
21、所述网关用于接收用户访问请求,并根据所述用户访问请求,读取所述网关配置信息,获取目标用户的业务分组,进行权限判断;在权限判断的条件均满足时,网关允许目标用户访问目标数据服务。
22、第三方面,提供了一种基于apisix的数据仓库数据权限控制系统,用于执行第一方面任一所述的方法,包括:
23、写入模块,用于写入网关配置信息;所述网关配置信息包括预设的业务分组、路由分组、访问关系和用户信息;
24、接收模块,用于接收用户访问请求;所述用户访问请求包括请求头、请求路径和目标用户所请求的数据权限参数,所述请求头包括目标用户的认证信息,所述请求路径包括目标数据服务;
25、权限判断模块,用于根据所述用户访问请求,读取所述网关配置信息,获取目标用户的业务分组,并进行权限判断,包括:
26、根据访问关系,判断目标用户的业务分组是否允许访问路由分组下的目标数据服务;
27、判断目标用户所请求的数据权限参数是否在路由分组的数据权限范围内;
28、访问模块,用于在权限判断的条件均满足时,允许目标用户访问所述目标数据服务。
29、第四方面,提供了一种计算机存储介质,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行第一方面任一所述的方法。
30、本专利技术的有益效果是:
31、1、本专利技术通过在网关层面集中管理所有数据访问请求,本专利技术实现了数据服务的统一出口。无论用户请求访问哪一个数据仓库或数据服务,所有请求都必须经过网关的权限验证和访问控制。这种统一的管理模式不仅提高了数据访问的安全性,还简化了数据服务的入口配置,减少了多个入口可能带来的安全漏洞。同时,统一出口使得系统可以更容易地监控和审计所有的数据访问行为,为企业的数据管理提供了更高的可控性和透明度。
32、2、本专利技术在集团型数据仓库环境下,本专利技术通过管理平台和网关的集中管理,提供多个数据仓库系统之间的权限管理工作。系统能够自动处理各个数据仓库的权限配置,减少了跨系统权限管理的复杂性,提升了管理效率。
33、3、本专利技术通过管理平台集中管理数据权限和业务元数据,自动生成和更新网关配置文件,减少了手动配置和维护的工作量。与传统rbac模型需要大量人工干预和配置不同,本专利技术的系统自动化程度高,极大地降低了维护成本。
34、4、本专利技术在网关层面实现了对数据权限的精细化控制,支持行级等多种粒度的权限管理。用户的数据访问权限可以被精确限定到数据表的某一行,满足复杂业务场景下的数据安全需求,防止数据过度暴露。
35、5、本专利技术支持动态权限配置,能够根据用户的权限属性和业务需求自动调整用户的权限范围。与传统的静态权限配置相比,本专利技术大大提高了系统应对业务变化的灵活性,能够快速响应用户权限需求的变化。
本文档来自技高网...【技术保护点】
1.一种基于apisix的数据仓库数据权限控制方法,其特征在于,包括:
2.根据权利要求1所述的基于apisix的数据仓库数据权限控制方法,其特征在于,S1包括:
3.根据权利要求2所述的基于apisix的数据仓库数据权限控制方法,其特征在于,S2中,所述目标用户所请求的数据权限参数为目标用户的全部数据权限参数或目标用户的部分数据权限参数。
4.根据权利要求3所述的基于apisix的数据仓库数据权限控制方法,其特征在于,S104中,所述获取用户信息包括:通过各数据仓库api采集用户信息和/或手动创建用户信息。
5.根据权利要求4所述的基于apisix的数据仓库数据权限控制方法,其特征在于,S2中,所述用户访问请求还包括请求体和请求参数,所述目标用户所请求的数据权限参数位于所述请求体或请求参数中,所述数据权限参数为单个值或列表。
6.一种基于apisix的数据仓库数据权限控制装置,其特征在于,用于执行权利要求1至5任一所述的方法,所述装置包括网关和管理平台;
7.一种基于apisix的数据仓库数据权限控制系统,
8.一种计算机存储介质,其特征在于,所述计算机存储介质内存储有计算机程序;所述计算机程序在计算机上运行时,使得计算机执行权利要求1至5任一所述的方法。
...【技术特征摘要】
1.一种基于apisix的数据仓库数据权限控制方法,其特征在于,包括:
2.根据权利要求1所述的基于apisix的数据仓库数据权限控制方法,其特征在于,s1包括:
3.根据权利要求2所述的基于apisix的数据仓库数据权限控制方法,其特征在于,s2中,所述目标用户所请求的数据权限参数为目标用户的全部数据权限参数或目标用户的部分数据权限参数。
4.根据权利要求3所述的基于apisix的数据仓库数据权限控制方法,其特征在于,s104中,所述获取用户信息包括:通过各数据仓库api采集用户信息和/或手动创建用户信息。
5.根据权利要求4所述的基于apisix的数...
【专利技术属性】
技术研发人员:陈杰,周昱,许建峰,郑剑,高邦鹏,屈健,孙超,
申请(专利权)人:浙江浙能数字科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。