CN117668880A - 一种数据权限控制方法、装置以及电子设备 - Google Patents

一种数据权限控制方法、装置以及电子设备 Download PDF

Info

Publication number
CN117668880A
CN117668880A CN202311684113.3A CN202311684113A CN117668880A CN 117668880 A CN117668880 A CN 117668880A CN 202311684113 A CN202311684113 A CN 202311684113A CN 117668880 A CN117668880 A CN 117668880A
Authority
CN
China
Prior art keywords
configuration
target
data
authority
item
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311684113.3A
Other languages
English (en)
Inventor
张璐
刘中烨
李金金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Agricultural Bank of China
Original Assignee
Agricultural Bank of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Agricultural Bank of China filed Critical Agricultural Bank of China
Priority to CN202311684113.3A priority Critical patent/CN117668880A/zh
Publication of CN117668880A publication Critical patent/CN117668880A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种数据权限控制方法、装置以及电子设备,当接收到目标用户对审核项目的数据访问请求时,获取目标用户的关联信息和权限更新配置表;其中,关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;基于目标角色类别、目标访问接口以及角色与访问接口之间的对应关系预设表,对数据访问请求进行一级校验,确定一级校验结果;当一级校验结果为通过时,基于目标访问接口、用户所属机构和权限更新配置表对数据访问请求进行二级校验,确定二级校验结果;当二级校验结果为通过时,基于关联信息以及预设子项权限配置表,对目标用户开放与数据访问请求对应的各个子项数据的操作权限,提高了数据访问安全性、适应性。

Description

一种数据权限控制方法、装置以及电子设备
技术领域
本发明涉及用户数据处理领域,尤其涉及一种数据权限控制方法、装置以及电子设备。
背景技术
随着大数据时代的飞速发展,一方面,发挥数据的资源价值不可避免的要进行数据共享,另一方面,数据共享所带来的数据安全问题也不容忽视。因此,对数据进行有效的数据权限控制,已成为至关重要的系统安全防线之一,只有合理进行数据访问权限控制,才能有效降低数据泄露风险,实现无权之人无法访问、有权之人按权访问。
目前,数据权限访问控制机制,通常是基于RBAC进行简单的角色控制和或者用户组控制,即在系统中设置多个角色,每个角色有不同的菜单访问权限,根据用户对菜单访问的需要给用户赋予不同的角色以进行控制。
然而,这类控制方式存在以下问题:第一,前端页面代码冗余性高,无法适应多个角色共享页面的情况;第二,安全性差,一旦用户修改url参数,将很容易越权访问到其他数据;第三,适应性差,对于相同角色要访问不同数据子项、相同角色相同用户对同一子项访问控制的时序性要求等难以满足。
发明内容
本发明提供了一种数据权限控制方法、装置以及电子设备,以提高数据访问安全性、适应性。
根据本发明的第一方面,提供了一种数据权限控制方法,包括:
当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表;其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;
基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果;
当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果;
当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限;其中,所述操作权限包括查看数据权限和编辑数据权限。
根据本发明的第二方面,提供了一种数据权限控制装置,包括:
数据获取模块,用于当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表;其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;
第一校验模块,用于基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果;
第二校验模块,用于当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果;
数据访问模块,用于当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限;其中,所述操作权限包括查看数据权限和编辑数据权限。
根据本发明的第三方面,提供了一种电子设备,电子设备包括:
至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的计算机程序,计算机程序被至少一个处理器执行,以使至少一个处理器能够执行本发明任一实施例的数据权限控制方法。
根据本发明的第四方面,提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令用于使处理器执行时实现本发明任一实施例的数据权限控制方法。
本发明实施例具有以下有益效果:第一,通过预先配置角色与访问接口之间的对应关系预设表、预设父子类权限配置表、预设子项权限配置表,实现灵活配置数据访问权限,按需生成细粒度权限控制记录表,实现无权之人无法访问,有权之人按权访问,相同角色相同机构同一数据不同子项数据访问权限控制。此外,将权限控制从菜单级细化到接口级,与基于用户角色的访问控制方法比,对于不同角色需要在同一页面进行不同的数据操作的情形,能够有效提高前端代码的复用率。同时,通过该装置可灵活配置接口权限校验情况,能够做到业务需要变化时,不改代码,通过修改接口权限配置就能达到数据权限控制变更的目的。第二,通过对动态更新预设父子类权限配置表,得到权限更新配置表,实时捕获业务流程变化,动态更新数据权限与业务权限流程,精准记录父子项的数据状态,结合数据权限校验机制,精准拦截数据权限访问请求,实现相同角色相同机构不同数据访问权限控制与相同角色不同机构同一数据不同时点数据访问权限控制。第三,通过对用户角色接口、流程环节操作、数据操作权限、子类子项权限进行校验,有效避免水平越权、垂直越权、流程逃逸等安全漏洞。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例涉及的数据父子关系特征示意图;
图2是根据本发明实施例涉及的项目操作流程时序图;
图3是根据本发明实施例涉及的各角色的数据操作权限示意图;
图4是根据本发明实施例涉及的一种子项权限动态变化情形;
图5是根据本发明实施例涉及的相同角色相同机构同一数据进行不同子项数据访问权限控制示意图;
图6是根据本发明实施例一提供的一种数据权限控制方法的流程图;
图7是根据本发明实施例一涉及的预设父子类权限配置表结构示意图;
图8是根据本发明实施例一涉及的预设父子类权限配置表更新过程流程图;
图9是根据本发明实施例一涉及的数据的具体校验过程流程图;
图10是根据本发明实施例二提供的一种数据权限控制装置的结构示意图;
图11是实现本发明实施例的数据权限控制方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在介绍本发明实施例提供的技术方案之前,可以先对本方案的具体应用场景进行示例性说明。
目前,商业银行在进行内控合规管理责任追究工作时,通常面临以下情况:
1.责任追究数据是具有父子关系的数据。在责任认定阶段,检查组人员将由一个主办机构录入项目,项目下可能包含对多家不同的被查机构进行调查的底稿记录单,同一底稿下可能包含多个部门或下级行的问题记录单,同一问题下可能包含多个与该问题有关的责任认定信息,这就使得数据具有如图1所示的父子关系特征。
2.项目接收阶段,同一机构受理的数据可能分发给多个审理员进行审理。如:机构A收到项目1,项目2,项目3等3个项目的调查数据,机构A的管理员可将3个数据分别发往审理员1,审理员2,这就使得相同角色相同机构对该机构下不同数据具有不同的访问要求。
3.内部移送进行调查核实涉及多家机构协同处理。在项目移送阶段,项目审核员对项目录入员提交的项目进行部门内审查,当认为项目或项目下底稿、问题、认定表存在错误时,可选择部分或全部驳回审核内容,若为部分驳回,项目录入员只能操作部分驳回的子项,而不应能操作未驳回的子项。在实质性审查阶段,项目的审理员需要根据底稿的被查机构逐级下发底稿,由底稿被查机构所在行审理员对底稿以及底稿下问题、认定表进行实质性审查,审查无误后,将审查结果逐级反馈至项目审理员,在数据下发后,下发行和流经行只能查看数据,而无法操作数据,且项目审理员能查看项目下的所有数据,但流经行只能查看项目下由下发行下发给该机构的数据,这就存在相同角色(审理员)不同机构(项目下发行、流经行、目的行)同一数据(底稿、问题、认定表)不同时点数据访问权限存在差异性且动态变化。如图所示,假定当前数据存在如下特征,项目proj1下存在底稿m1,m2,m3,m4,图2时序图展示了项目操作流程:
步骤1:项目录入员录入项目,提交项目审核员审核;
步骤2:项目审核员驳回底稿m2(这种情况即为部分驳回);
步骤3:项目录入员修改底稿m2与其子项(底稿下的问题,问题下的责任人认定表)后重新提交审核;
步骤4:项目审核员审核通过后将项目移送到机构1管理员处;
步骤5:机构1管理员将该项目的实质性初审工作分发给机构1的审理员;
步骤6:机构1审理员受理后,将该项目下底稿被查单位分别为机构2(底稿m2)、机构3(底稿m3),机构4(底稿m4)的底稿进行底稿下发,因底稿m1的被查机构就为机构1故不进行下发,被查机构为机构2的底稿m2下发给了机构2,其他底稿m3,m4因底稿被查机构3,4为机构2的下辖机构,因此底稿会先下发给机构2,由机构2决定是否下发;
步骤7;机构2的审理员在受理后,将底稿m3,m4进行下发,机构3,机构4为平级机构,故底稿m3下发给机构3,底稿m4下发给机构4;
步骤8:当机构3,机构4完成底稿及其子项的实质性审查流程时,将结果反馈给机构2,机构2对反馈结果再次进行实质性审查;
步骤9:机构2完成m2,m3,m4的实质性审查工作时,将结果提交反馈至机构1;
步骤10:机构1完成m1,m2,m3,m4的实质性审查工作时,将结果提交到机构1的审核员进行审核,审核完成后进入下一流程;上述各环节中,各角色的数据操作权限如图3所示。
责任追究阶段,有两种存在子项权限动态变化情形:
情形1:如图4所示,在责任人处理流程开启前,审理员1需要根据项目proj1下责任人的现干部管理权限将责任人分发给具有该责任人的干部管理权限的机构单位。例如,底稿m1下有问题prob1,该问题下有责任人person11,person12,person13,其中person13的干部管理权限在机构2中,审理员1可将该责任人person13与其所属的问题prob1,底稿m1,项目proj1发给机构2,机构2将拥有问题prob1,底稿m1,项目proj1的查看权限与责任人person13的操作权限;
情形2:如果存在该机构1下,审理员1处理项目proj1,审理员2处理项目proj2,项目proj1与项目proj2都有同样的责任人的情况,审理员1可将项目proj1下的责任人person11分发给审理员2,由审理员2在项目proj2中进行合并处理,这就使得审理员2具有了person11的操作权限。
4.在处理执行阶段,对于同一责任追究数据,其所能访问的数据字段与调查核实阶段所能访问的字段存在差异性,在调查核实阶段,具有责任人下所有字段的操作权限,而在处理执行阶段,只能操作和处理决定有关的字段,与查看其他字段,这就使得需要对相同角色相同机构同一数据(责任信息:含基本信息类,责任人信息类,责任认定信息类,处理处分信息类)进行不同子项数据访问权限控制,如图5所示。
现有的数据权限访问控制机制,通常是基于RBAC进行简单的角色控制和或者用户组控制,即在系统中设置多个角色,每个角色有不同的菜单访问权限,根据用户对菜单访问的需要给用户赋予不同的角色以进行控制,这类控制方式存在以下问题:第一,前端页面代码冗余性高,无法适应多个角色共享页面的情况;第二,安全性差,一旦用户修改url参数,将很容易越权访问到其他数据;第三,适应性差,对于相同角色要访问不同数据子项、相同角色相同用户对同一子项访问控制的时序性要求等难以满足。
针对以上问题以及现有数据权限控制机制的短板问题,建立一种支持多人员任务协作处理父子关系数据权限控制机制对于解决数据越权(水平越权、垂直越权)问题、以及避免流程逃逸等安全漏洞具有重要价值。
实施例一
图6是本发明实施例一提供的一种数据权限控制方法的流程图,本实施例可适用于在对数据的访问权限进行控制的情形,该方法可以由数据权限控制装置来执行,该数据权限控制装置可以采用硬件和/或软件的形式实现,该数据权限控制装置可配置于终端和/或服务器中。如图6所示,该方法包括:
S110、当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表。
其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构。其中,角色类别的数量可以是多个。
在执行S121之前,预先构建预设父子类权限配置表。
父子类权限配置表可以理解为表格中定义了一些需要填写数据的单元格,在审核项目实际运行的过程中,根据实际情况动态更新这些数据单元格。
其中,预设父子类权限配置表中包括与所述审核项目对应的角色类别维度、机构类别维度、流程阶段维度以及相关文件隶属关系维度的组合配置项。
预设父子类权限配置表中包含多个配置行,每个配置行中包括多个配置项;预设父子类权限配置表包括多个机构层级权限配置行,一个相关文件隶属关系配置行,一个当前信息配置行;每个机构层级权限配置行中包括处理机构配置项、当前处理人配置项、审理员配置项、流程任务配置项、流程环节配置项;相关文件隶属关系配置行包括至少一个具有父子关系的相关文件配置项;当前信息配置行包括当前处理机构配置项、当前处理人配置项、当前处理机构级层配置项、当前流程环节配置项以及目标流程配置项。
具体的,对角色类别维度,当任务涉及同一机构不同角色或不同机构同一或不同角色协作处理时,需要对涉及的角色进行权限配置;对机构类别维度,当任务涉及多个机构层级(总行、一级分行、二级分行、一级支行、二级支行)协作处理时,需要对各级机构层级,具体哪些机构能对具体业务数据进行处理进行限制;对流程阶段维度,当任务需要在不同流程环节动态控制机构层级权限配置、角色人员权限配置、数据子项权限配置是否生效;对相关文件隶属关系维度,当任务具有父子关系特征,且任务协作人员对这类父子关系数据可操作权限具有差异时,明确业务项父子关系。基于此,最终得到的预设父子类权限配置表结构示意图参见图7。
进一步的,在审核项目执行的过程中,基于至少一个用户的服务端接口请求,对预设父子类权限配置表中的数据内容进行更新,得到权限更新配置表。
在本实施例中,可以对预设父子类权限配置表进行动态更新,具有更新过程参见图8,包括以下步骤:
(1)基于服务端接口请求,确定权限更新类型;
(2)若权限更新类型为机构权限变化类,则基于服务端接口请求中携带的待变机构类型,更新与待变机构类型对应的待变机构层级权限配置行;
(3)若权限更新类型为隶属关系变化类,则基于服务端接口请求中携带的目标父表与目标子表之间的关系,更新相关文件隶属关系配置行;
(4)若权限更新类型为当前信息变化类,则基于服务端接口请求中携带的当前信息,更新当前信息配置行。
在本实施例中,服务端接口请求中携带有权限更新类型,在此直接获取即可,对预设父子类权限配置表的更新存在以下三类情形:
情形一:数据在机构之间发生了流转,此时需要更新流转目的机构所对应机构层级的相关机构权限配置信息,如数据流向一级分行机构进行处理,更新一级分行处理机构为目的机构,更新一级分行处理人为目标机构的处理人,因在本方案背景下,涉及同一机构多个处理角色对数据的共享处理,因此还需要根据处理人的角色更新对应机构角色的信息,如若当前操作人员为一级分行审理员,则更新一级分行审理员为当前操作人员。
情形二:数据的隶属关系发生了变化,在本方案背景下,项目录入环节仅涉及项目、底稿、问题、认定表的隶属关系,随着数据流程的流转,认定表隶属关系发生了新增,及认定表将属于一个合并处理意见表,一个合并处理意见表可能对应多个认定表,因此,当认定表隶属关系新增时,需要更新父子隶属关系配置项(如合并处理意见表编号)。此外,由于责任人处理阶段存在分发合并的情形,认定表与合并处理意见表的隶属关系将发生变化,此时也需要更新父子隶属关系配置项。
情形三:由于在不同的操作阶段,同一机构的不同角色、不同机构的相同角色等对数据的操作权限存在动态变化的差异,因此当前环节等信息发生变化时,需要更新当前信息配置项。
在本实施例中,目标用户想要访问审核项目的相关数据时,可以在服务器控制页面中,触发对应的控件,此时便产生了数据访问请求,进一步的,后端控制服务器可根据数据访问请求,获取目标用户的目标访问接口、目标角色类别、用户所属机构。并获取当前时刻的权限更新配置表。
S120、基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果。
其中,一级校验结果包括通过结果和失败结果,只有通过结果才就可以进行后续控制流程。
在本实施例中,可以预先确定角色与访问接口之间的对应关系预设表。具体确定过程为:步骤1:进行系统角色配置,生成角色表;步骤2:进行系统接口配置,生成接口表;步骤3:进行角色-接口权限配置,给不同的角色赋予同一或不同接口使用权限,并配置角色接口权限校验启用规则,从而根据应用需要,决定是否开启角色-接口权限校验,将权限控制力度细化至接口级。
具体的,一级校验的具体过程为:基于目标角色类别,查询角色与访问接口之间的对应关系预设表,得到至少一个候选访问接口;若至少一个候选访问接口中包括目标访问接口,则一级校验结果为通过;若至少一个候选访问接口中不包括目标访问接口,则一级校验结果为不通过,返回拒绝访问提示框。
在本实施例中,数据的具体校验过程参见图9,当目标用户在客户端发起接口请求时,系统从后端提取目标用户所具有的目标角色类别,进而角色与访问接口之间的对应关系预设表,校验该目标角色类别是否具有相应接口的访问权限,以确保无权之人无法访问,有权之人按权访问,校验不通过则向客户端发送失败提示,校验通过时,进入后续步骤。
S130、当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果。
其中,二级校验结果包括校验通过结果和校验失败结果,检验通过结果包括查看校验通过结果和编辑校验通过结果。
可选的,进行二级校验的具体过程可以包括:
(1)查询权限更新配置表中的当前处理机构、当前流程环节以及当前处理人。
在本实施例中,可以基于预先设定的索引关系,从权限更新配置表中查询当前处理机构配置项、当前流程环节配置项以及当前处理人配置项对应的单元格数据内容,从而得到当前处理机构、当前流程环节以及当前处理人。
(2)基于当前处理机构、当前流程环节、当前处理人、用户所属机构以及目标访问接口,确定第一校验结果。
优选的,确定第一校验结果,具体包括:基于目标访问接口,确定接口对应流程环节;若当前处理机构与用户所属机构一致,接口对应流程环节与当前流程环节一致,当前处理人为目标用户,则确定第一校验结果为通过。
在本实施例中,该步骤可以称之为流程环节操作校验。只有同时满足,当前处理机构与用户所属机构一致,接口对应流程环节与当前流程环节一致,当前处理人为目标用户,才能通过校验,这一环节的校验,能够避免客户端请求直接调用后续环节流程导致的流程逃逸漏洞。
(3)当第一校验结果为通过时,将用户所属机构在权限更新配置表中对应的机构层级权限配置行,确定为目标机构层级行。
示例性的,参见图见图7,若用户所属机构为二级分行处理机构,则目标机构层级行即为图7中第三行的这个配置行。
(4)基于目标机构层级行以及当前信息配置行中的配置项,确定二级校验结果。
优选的,确定二级校验结果,具体包括:
若目标用户为当前处理人,并且,目标机构层级行中的流程环节配置项与当前信息配置行中的当前流程环节配置项数据内容一致,则二级校验结果为编辑校验通过结果;
若目标用户对应于目标机构层级行中的当前处理人配置项,并且,当前信息配置行中的当前处理人配置项与目标机构层级行中的当前处理人配置项数据内容不一致,则二级校验结果为查看校验通过结果。
在本实施例中,这一步骤可以称之为数据操作权限校验。根据目标用户,目标所属机构,从权限更新配置表中查询目标所属机构对应层级的相关权限配置以及当前信息配置行中的信息内容,存在以下三种情形。第一种情形:如果目标用户为当前处理人,并且,目标机构层级行中的流程环节配置项与当前信息配置行中的当前流程环节配置项数据内容一致,则二级校验结果为编辑校验通过结果。第二种情形:如果目标用户对应于目标机构层级行中的当前处理人配置项,并且,当前信息配置行中的当前处理人配置项与目标机构层级行中的当前处理人配置项数据内容不一致,则二级校验结果为查看校验通过结果。第三种情形:所有不满足第一种情形和第二种情形的情况都被确定为校验失败结果。
S140、当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限。
其中,操作权限包括查看数据权限和编辑数据权限。
在本实施例中,预先配置预设子项权限配置表,具体理解为当任务除对具有父子关系特征的数据可操作性存在差异外,对同一子项的具体字段进行差异化权限配置。在预设子项权限配置表中可以预先设定在何种情形可以对哪些数据子项开通编辑权限,对那些数据可以开通查看权限。基于此,可以根据关联信息以及预设子项权限配置表中的匹配关系,对目标用户开放与数据访问请求对应的各个子项数据的操作权限。
示例性的,对于同一责任追究数据,其所能访问的数据字段与调查核实阶段所能访问的字段存在差异性,在调查核实阶段,具有责任人下所有字段的操作权限,而在处理执行阶段,只能操作和处理决定有关的字段,与查看其他字段,这就使得需要对相同角色相同机构同一数据(责任信息:含基本信息类,责任人信息类,责任认定信息类,处理处分信息类)进行不同子项数据访问权限控制。
本发明实施例,能够对操作的数据子项进行细粒度校验,以满足同一用户同一角色在不同环节时点对数据子项的操作权限控制。当该环节校验通过后,服务端接口调用服务,返回服务结果。
本发明实施例具有以下有益效果:第一,通过预先配置角色与访问接口之间的对应关系预设表、预设父子类权限配置表、预设子项权限配置表,实现灵活配置数据访问权限,按需生成细粒度权限控制记录表,实现无权之人无法访问,有权之人按权访问,相同角色相同机构同一数据不同子项数据访问权限控制。此外,将权限控制从菜单级细化到接口级,与基于用户角色的访问控制方法比,对于不同角色需要在同一页面进行不同的数据操作的情形,能够有效提高前端代码的复用率。同时,通过该装置可灵活配置接口权限校验情况,能够做到业务需要变化时,不改代码,通过修改接口权限配置就能达到数据权限控制变更的目的。第二,通过对动态更新预设父子类权限配置表,得到权限更新配置表,实时捕获业务流程变化,动态更新数据权限与业务权限流程,精准记录父子项的数据状态,结合数据权限校验机制,精准拦截数据权限访问请求,实现相同角色相同机构不同数据访问权限控制与相同角色不同机构同一数据不同时点数据访问权限控制。第三,通过对用户角色接口、流程环节操作、数据操作权限、子类子项权限进行校验,有效避免水平越权、垂直越权、流程逃逸等安全漏洞。
实施例二
图10是本发明实施例二提供的一种数据权限控制装置的结构示意图。如图10所示,该装置包括:数据获取模块210、第一校验模块220、第二校验模块230以及数据访问模块240。
其中,数据获取模块210,用于当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表;其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;
第一校验模块220,用于基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果;
第二校验模块230,用于当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果;
数据访问模块240,用于当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限;其中,所述操作权限包括查看数据权限和编辑数据权限。
本发明实施例具有以下有益效果:第一,通过预先配置角色与访问接口之间的对应关系预设表、预设父子类权限配置表、预设子项权限配置表,实现灵活配置数据访问权限,按需生成细粒度权限控制记录表,实现无权之人无法访问,有权之人按权访问,相同角色相同机构同一数据不同子项数据访问权限控制。此外,将权限控制从菜单级细化到接口级,与基于用户角色的访问控制方法比,对于不同角色需要在同一页面进行不同的数据操作的情形,能够有效提高前端代码的复用率。同时,通过该装置可灵活配置接口权限校验情况,能够做到业务需要变化时,不改代码,通过修改接口权限配置就能达到数据权限控制变更的目的。第二,通过对动态更新预设父子类权限配置表,得到权限更新配置表,实时捕获业务流程变化,动态更新数据权限与业务权限流程,精准记录父子项的数据状态,结合数据权限校验机制,精准拦截数据权限访问请求,实现相同角色相同机构不同数据访问权限控制与相同角色不同机构同一数据不同时点数据访问权限控制。第三,通过对用户角色接口、流程环节操作、数据操作权限、子类子项权限进行校验,有效避免水平越权、垂直越权、流程逃逸等安全漏洞。
可选的,数据权限控制装置还包括权限配置表更新模块,具体用于在所述审核项目执行的过程中,基于至少一个用户的服务端接口请求,对预设父子类权限配置表中的数据内容进行更新,得到所述权限更新配置表;其中,所述预设父子类权限配置表中包括与所述审核项目对应的角色类别维度、机构类别维度、流程阶段维度以及相关文件隶属关系维度的组合配置项。
可选的,所述预设父子类权限配置表中包含多个配置行,每个配置行中包括多个配置项;所述预设父子类权限配置表包括多个机构层级权限配置行,一个相关文件隶属关系配置行,一个当前信息配置行;每个所述机构层级权限配置行中包括处理机构配置项、当前处理人配置项、审理员配置项、流程任务配置项、流程环节配置项;所述相关文件隶属关系配置行包括至少一个具有父子关系的相关文件配置项;所述当前信息配置行包括当前处理机构配置项、当前处理人配置项、当前处理机构级层配置项、当前流程环节配置项以及目标流程配置项。
可选的,权限配置表更新模块,包括:
更新类型判断单元,用于基于所述服务端接口请求,确定权限更新类型;
机构层级更新单元,用于若所述权限更新类型为机构权限变化类,则基于服务端接口请求中携带的待变机构类型,更新与所述待变机构类型对应的待变机构层级权限配置行;
隶书关系更新单元,用于若所述权限更新类型为隶属关系变化类,则基于服务端接口请求中携带的目标父表与目标子表之间的关系,更新相关文件隶属关系配置行;
当前信息变化单元,用于若所述权限更新类型为当前信息变化类,则基于服务端接口请求中携带的当前信息,更新当前信息配置行。
可选的,第一校验模块220,包括:
候选接口确定单元,用于基于所述目标角色类别,查询所述角色与访问接口之间的对应关系预设表,得到至少一个候选访问接口;
校验通过单元,用于若所述至少一个候选访问接口中包括目标访问接口,则所述一级校验结果为通过;
校验失败单元,用于若所述至少一个候选访问接口中不包括目标访问接口,则所述一级校验结果为不通过,返回拒绝访问提示框。
可选的,第二校验模块230,包括:
当前信息获取单元,用于查询所述权限更新配置表中的当前处理机构、当前流程环节以及当前处理人;
第一校验结果确定单元,用于基于所述当前处理机构、当前流程环节、当前处理人、用户所属机构以及目标访问接口,确定第一校验结果;
目标层级确定单元,用于当所述第一校验结果为通过时,将用户所属机构在权限更新配置表中对应的机构层级权限配置行,确定为目标机构层级行;
第二校验结果确定单元,用于基于所述目标机构层级行以及当前信息配置行中的配置项,确定二级校验结果。
可选的,所述第一校验结果确定单元具体用于基于所述目标访问接口,确定接口对应流程环节;若所述当前处理机构与所述用户所属机构一致,所述接口对应流程环节与所述当前流程环节一致,所述当前处理人为所述目标用户,则确定第一校验结果为通过。
可选的,所述二级校验结果包括校验通过结果和检验失败结果,所述检验通过结果包括查看校验通过结果和编辑校验通过结果;
第二校验结果确定单元具体用于若目标用户为当前处理人,并且,目标机构层级行中的流程环节配置项与当前信息配置行中的当前流程环节配置项数据内容一致,则二级校验结果为编辑校验通过结果;若目标用户对应于目标机构层级行中的当前处理人配置项,并且,所述当前信息配置行中的当前处理人配置项与目标机构层级行中的当前处理人配置项数据内容不一致,则二级校验结果为查看校验通过结果。
本发明实施例所提供的数据权限控制装置可执行本发明任意实施例所提供的数据权限控制方法,具备执行方法相应的功能模块和有益效果。
实施例三
图11示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图11所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如数据权限控制方法。
在一些实施例中,数据权限控制方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的数据权限控制方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行数据权限控制方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据权限控制装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与目标用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向目标用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),目标用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与目标用户的交互;例如,提供给目标用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自目标用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形目标用户界面或者网络浏览器的目标用户计算机,目标用户可以通过该图形目标用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种数据权限控制方法,其特征在于,包括:
当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表;其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;
基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果;
当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果;
当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限;其中,所述操作权限包括查看数据权限和编辑数据权限。
2.根据权利要求1所述的方法,其特征在于,还包括:在所述审核项目执行的过程中,基于至少一个用户的服务端接口请求,对预设父子类权限配置表中的数据内容进行更新,得到所述权限更新配置表;其中,所述预设父子类权限配置表中包括与所述审核项目对应的角色类别维度、机构类别维度、流程阶段维度以及相关文件隶属关系维度的组合配置项。
3.根据权利要求2所述的方法,其特征在于,所述预设父子类权限配置表中包含多个配置行,每个配置行中包括多个配置项;
所述预设父子类权限配置表包括多个机构层级权限配置行,一个相关文件隶属关系配置行,一个当前信息配置行;
每个所述机构层级权限配置行中包括处理机构配置项、当前处理人配置项、审理员配置项、流程任务配置项、流程环节配置项;
所述相关文件隶属关系配置行包括至少一个具有父子关系的相关文件配置项;
所述当前信息配置行包括当前处理机构配置项、当前处理人配置项、当前处理机构级层配置项、当前流程环节配置项以及目标流程配置项。
4.根据权利要求3所述的方法,其特征在于,所述基于至少一个用户的服务端接口请求,对预设父子类权限配置表中的数据内容进行更新,得到所述权限更新配置表,包括:
基于所述服务端接口请求,确定权限更新类型;
若所述权限更新类型为机构权限变化类,则基于服务端接口请求中携带的待变机构类型,更新与所述待变机构类型对应的待变机构层级权限配置行;
若所述权限更新类型为隶属关系变化类,则基于服务端接口请求中携带的目标父表与目标子表之间的关系,更新相关文件隶属关系配置行;
若所述权限更新类型为当前信息变化类,则基于服务端接口请求中携带的当前信息,更新当前信息配置行。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果,包括:
基于所述目标角色类别,查询所述角色与访问接口之间的对应关系预设表,得到至少一个候选访问接口;
若所述至少一个候选访问接口中包括目标访问接口,则所述一级校验结果为通过;
若所述至少一个候选访问接口中不包括目标访问接口,则所述一级校验结果为不通过,返回拒绝访问提示框。
6.根据权利要求1所述的方法,其特征在于,所述当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果,包括:
查询所述权限更新配置表中的当前处理机构、当前流程环节以及当前处理人;
基于所述当前处理机构、当前流程环节、当前处理人、用户所属机构以及目标访问接口,确定第一校验结果;
当所述第一校验结果为通过时,将用户所属机构在权限更新配置表中对应的机构层级权限配置行,确定为目标机构层级行;
基于所述目标机构层级行以及当前信息配置行中的配置项,确定二级校验结果。
7.根据权利要求6所述的方法,其特征在于,所述基于所述当前处理机构、当前流程环节、当前处理人、用户所属机构以及目标访问接口,确定第一校验结果,包括:
基于所述目标访问接口,确定接口对应流程环节;
若所述当前处理机构与所述用户所属机构一致,所述接口对应流程环节与所述当前流程环节一致,所述当前处理人为所述目标用户,则确定第一校验结果为通过。
8.根据权利要求1所述的方法,其特征在于,其中,所述二级校验结果包括校验通过结果和检验失败结果,所述检验通过结果包括查看校验通过结果和编辑校验通过结果;所述基于所述目标机构层级行以及当前信息配置行中的配置项,确定二级校验结果,包括:
若目标用户为当前处理人,并且,目标机构层级行中的流程环节配置项与当前信息配置行中的当前流程环节配置项数据内容一致,则二级校验结果为编辑校验通过结果;
若目标用户对应于目标机构层级行中的当前处理人配置项,并且,所述当前信息配置行中的当前处理人配置项与目标机构层级行中的当前处理人配置项数据内容不一致,则二级校验结果为查看校验通过结果。
9.一种数据权限控制装置,其特征在于,包括:
数据获取模块,用于当接收到目标用户对审核项目的数据访问请求时,获取所述目标用户的关联信息和权限更新配置表;其中,所述关联信息包括目标用户对应的目标访问接口、目标角色类别、用户所属机构;
第一校验模块,用于基于所述目标角色类别、所述目标访问接口以及角色与访问接口之间的对应关系预设表,对所述数据访问请求进行一级校验,确定一级校验结果;
第二校验模块,用于当所述一级校验结果为通过时,基于所述目标访问接口、所述用户所属机构和所述权限更新配置表对所述数据访问请求进行二级校验,确定二级校验结果;
数据访问模块,用于当所述二级校验结果为通过时,基于所述关联信息以及预设子项权限配置表,对所述目标用户开放与所述数据访问请求对应的各个子项数据的操作权限;其中,所述操作权限包括查看数据权限和编辑数据权限。
10.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-8中任一项所述的数据权限控制方法。
CN202311684113.3A 2023-12-08 2023-12-08 一种数据权限控制方法、装置以及电子设备 Pending CN117668880A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311684113.3A CN117668880A (zh) 2023-12-08 2023-12-08 一种数据权限控制方法、装置以及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311684113.3A CN117668880A (zh) 2023-12-08 2023-12-08 一种数据权限控制方法、装置以及电子设备

Publications (1)

Publication Number Publication Date
CN117668880A true CN117668880A (zh) 2024-03-08

Family

ID=90067863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311684113.3A Pending CN117668880A (zh) 2023-12-08 2023-12-08 一种数据权限控制方法、装置以及电子设备

Country Status (1)

Country Link
CN (1) CN117668880A (zh)

Similar Documents

Publication Publication Date Title
US9626816B2 (en) Physical access request authorization
US11030027B2 (en) System for technology anomaly detection, triage and response using solution data modeling
US11539745B2 (en) Identifying legitimate websites to remove false positives from domain discovery analysis
US10749791B2 (en) System for rerouting electronic data transmissions based on generated solution data models
TW201944306A (zh) 確定高風險用戶的方法及裝置
US20080066049A1 (en) Method for enforcing change policy based on project state
US20200213083A1 (en) Blockchain Management Platform for Performing Asset Adjustment, Cross Sectional Editing, and Bonding
US20220335110A1 (en) Systems, methods, and devices for automation and integration of credentialing and authentication in workflows associated with computing platforms
US11005889B1 (en) Consensus-based policy management
CN115204733A (zh) 数据审计方法、装置、电子设备及存储介质
US11023835B2 (en) System for decommissioning information technology assets using solution data modelling
CN113190609A (zh) 数据仓库管理方法及系统、装置、存储介质、电子设备
CN108170860A (zh) 数据查询方法、装置、电子设备及计算机可读存储介质
US10764253B2 (en) System for using metadata to identify and extract specific upstream data, provisioning data batches, and providing dynamic downstream data access
CN117668880A (zh) 一种数据权限控制方法、装置以及电子设备
KR20220047939A (ko) 블록체인 커뮤니티 거버넌스 방법, 장치, 설비 및 저장매체
US20220337569A1 (en) Systems, methods, and devices for automation and integration of credentialing and authentication in workflows associated with computing platforms
CN114860615A (zh) 规则自动化测试方法、装置、电子设备及存储介质
US10977283B2 (en) System for mitigating intentional and unintentional exposure using solution data modelling
US10970406B2 (en) System for mitigating exposure associated with identified unmanaged devices in a network using solution data modelling
US10936984B2 (en) System for mitigating exposure associated with identified impacts of technological system changes based on solution data modelling
CN111414591A (zh) 工作流管理的方法和装置
CN116340965A (zh) 资源访问方法、装置、设备和存储介质
US20240161109A1 (en) Distributed evaluation platform for nonfungible tokens using virtual token cloning
CN115439104A (zh) 业务审核方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination