CN113987529B - 一种用户及其多角色相结合的权限控制方法 - Google Patents
一种用户及其多角色相结合的权限控制方法 Download PDFInfo
- Publication number
- CN113987529B CN113987529B CN202111208502.XA CN202111208502A CN113987529B CN 113987529 B CN113987529 B CN 113987529B CN 202111208502 A CN202111208502 A CN 202111208502A CN 113987529 B CN113987529 B CN 113987529B
- Authority
- CN
- China
- Prior art keywords
- user
- authority
- role
- menu
- information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012423 maintenance Methods 0.000 claims abstract description 8
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种用户及其多角色相结合的权限控制方法,具体如下:判断用户操作指令类别,当用户操作为数据表建立时,执行数据表建立过程;当用户操作为角色信息维护时,执行角色信息维护过程;当用户操作为登录时,执行用户登录过程。本发明通过系统预先自定义若干系统角色及其权限,设置具体用户所属角色,同时可对特殊具体用户进行私有权限设置,这样既减少了大量用户权限配置工作量,又避免了仅依靠角色统一配置权限的拘泥。
Description
技术领域
本发明涉及信息系统权限管理技术领域,具体涉及一种用户及其多角色相结合的权限控制方法。
背景技术
随着软件信息系统从桌面型发展至互联网大型应用,信息安全变得越来越重要,系统功能、数据权限有效控制手段必须适应新的发展形势。
基于传统桌面型、局域网软件信息系统因其应用面较窄,用户数量较少,系统权限配置往往仅针对具体用户进行,工作量不大,随着互联网快速发展,各种传统软件信息系统升级优化至互联网版本,用户数量急剧增加,仅针对具体用户进行系统权限配置重复操作较多,管理效率低下,系统设计者提出系统角色的概念,系统建立自定义角色并仅针对角色进行系统权限配置,只需给用户设置所属角色就可完成系统权限配置,大大减少了配置工作量,但同时又带来了一个新的弊端,即仅依靠角色统一配置权限,使用户权限配置过于拘泥,往往碰到一些需要特殊权限的用户不能灵活处理。
本文主要是设计一种用户及其多角色相结合的权限控制方法,以解决以上问题。
发明内容
针对上述情况,本文设计一种用户及其多角色相结合的权限控制方法,既解决大量用户权限配置工作量大的问题,又可避免仅依靠角色统一配置权限的灵活性不足问题。
为解决以上问题,本发明的技术方案为:一种用户及其多角色相结合的权限控制方法,具体如下:
判断用户操作指令类别,当用户操作为数据表建立时,执行数据表建立过程;当用户操作为角色信息维护时,执行角色信息维护过程;当用户操作为登录时,执行用户登录过程;
所述数据表建立过程如下:
根据需求至少建立如下数据表:系统菜单表、菜单功能表、角色信息表、角色权限表、用户信息表、用户角色信息表、用户私有权限表;
所述角色信息维护过程包括如下步骤:
步骤a1:在角色信息表中建立角色基础信息,在用户信息表中建立用户基础信息;
步骤a2:给角色分配菜单数据表的功能项:将角色与分配的菜单及菜单功能项做笛卡尔积,获得角色菜单功能权限值,并存储进角色权限表;
步骤a3:给用户分配角色:将用户与分配的角色做笛卡尔积,获得用户角色信息值,并存储进用户角色信息表;
步骤a4:给用户分配私有权限:将用户与分配的菜单数据表的功能项做笛卡尔积,获得用户私有权限值,并存储进用户私有权限表;
所述用户登录过程如下:
根据用户登录信息,获取用户对应的用户私有权限值、用户角色信息值,通过用户角色信息值获取用户对应的角色菜单功能权限值,
将用户私有权限值与角色菜单功能权限值进行或运算,根据计算结果反馈用户所拥菜单,用于展示。
进一步地,所述系统菜单表至少包括:菜单标识、菜单名称;
所述菜单功能表至少包括:菜单标识、功能序号、功能名称;
所述角色信息表至少包括:角色标识、角色名称;
所述角色权限表至少包括:角色标识、菜单标识、权限值;
所述用户信息表至少包括:用户标识、用户名称、密码;
所述用户角色信息表至少包括:用户标识、角色标识;
所述用户私有权限表至少包括:用户标识、菜单标识、权限值。
进一步地,所述角色菜单功能权限值、用户角色信息值、用户私有权限值均为二进制数。
进一步地,所述角色菜单功能权限值、用户角色信息值、用户私有权限值经对称加密后存储。
进一步地,所述角色菜单功能权限值、用户角色信息值、用户私有权限值加密方法为:将所述角色菜单功能权限值、用户角色信息值、用户私有权限值分别转换成十进制数,再进行对称加密。
有益效果
本发明提供了一种用户及其多角色相结合的权限控制方法,与现有公知设计技术相比,本发明具有如下有益效果:
本发明通过系统预先自定义若干系统角色及其权限,设置具体用户所属角色,同时可对特殊具体用户进行私有权限设置,这样既减少了大量用户权限配置工作量,又避免了仅依靠角色统一配置权限的拘泥;通过借助二进制比特位(0、1)特性进行权限值获取与解析,以及十进制转换加密操作,减少了存储空间,提升了权限数据的安全性。
附图说明
通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
图1为本发明具体实施例中用户权限控制总体流程图;
图2为本发明具体实施例中权限配置时权限值生成流程图;
图3为本发明具体实施例中用户实际权限值运算流程图;
图4为本发明具体实施例中角色权限配置操作界面示意图;
图5为本发明具体实施例中用户权限配置操作界面示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明一种用户及其多角色相结合的权限控制方法,主要包括如下步骤:
步骤1:建立数据表,主要有:系统菜单表、菜单功能表、角色信息表、角色权限表、用户信息表、用户角色信息表、用户私有权限表。其中系统菜单表至少包括以下几个属性:菜单标识、菜单名称;菜单功能表至少包括以下几个属性:菜单标识、功能序号、功能名称;角色信息表至少包括以下几个属性:角色标识、角色名称;角色权限表至少包括以下几个属性:角色标识、菜单标识、权限值;用户信息表至少包括以下几个属性:用户标识、用户名称、密码;用户角色信息表至少包括以下几个属性:用户标识、角色标识;用户私有权限表至少包括以下几个属性:用户标识、菜单标识、权限值。
步骤2:根据具体案例系统维护系统菜单M={m1,m2,…,mn}及其功能项Mf={(m1,f1),(m1,f2),(m1,f3),…,(m1,fn),…,(mn,fn)}的数据。例如,M={角色管理,用户管理,…},Mf={(角色管理,使用),(角色管理,新增),(角色管理,修改),(角色管理,删除),(角色管理,权限设置),(用户管理,使用),(用户管理,新增),(用户管理,修改),(用户管理,删除),(用户管理,所属角色设置),(用户管理,私有权限设置),…}。
步骤3:维护系统角色信息并配置其系统菜单功能权限。根据具体案例系统业务需要维护系统角色R={r1,r2,…,rn},将角色集合R与菜单集合M做笛卡尔积,得出角色菜单功能权限结果P={p(r1),p(r2),…,p(rn)}。例如,菜单m1具有功能项f1、f2、f3、f4,设置角色r1具有其f1、f3、f4权限,根据设置生成二进制文本1011(与权限项一一对应),文本转换为十进制权限值11;设置角色r2具有其f2、f3、f4权限,根据设置生成二进制文本0111,文本转换为十进制权限值7;r1与r2权限值加密存储至角色权限表。
步骤4:维护系统用户信息并配置其所属角色。维护系统用户U={u1,u2,…,un},根据用户所属角色的设置,将用户集合U与角色集合R做笛卡尔积,得出用户所属角色结果Ur={(u1,r1),(u2,r2),…,(un,rn)}。例如,设置用户u1具有角色r1,r2角色,进行笛卡尔积运算则产生Ur={(u1,r1),(u2,r2)},存储至用户角色信息表。
步骤5:配置系统用户私有功能权限。将用户集合U与菜单集合M做笛卡尔积,得出用户菜单功能权限结果P={p(u1),p(u2),…,p(un)}。例如,设置用户u1具有菜单m1的f1、f2、f3私有权限,根据设置生成二进制文本1110,文本转换为十进制权限值14,加密存储至用户私有权限表。
步骤6:用户登录系统,将其私有权限值与所属角色权限值进行或运算,利用运算结果集对系统菜单功能项进行权限控制。以步骤(4)、(5)中用户u1为例,先从用户私有权限表获取u1解密权限值p(u1)=14,再从用户角色信息表获取其所属角色r1,r2,遍历角色,从角色权限表取得权限值p(r1)=11,p(r2)=7,则用户u1最终权限P(u1)={p(r1),p(r2),p(u1)}=15,转换为二进制字符串1111,则表示用户u1对菜单m1具有f1、f2、f3、f4的权限。
以下通过具体的实施例对本发明一种用户及其多角色相结合的权限控制方法进行详细说明。
如图2-5所示,本实施例一种用户及其多角色相结合的权限控制方法,对具体案例系统菜单模块Ai(i=1..n)进行权限分配与控制。假设Ai模块需要控制权限项Fj(j=1..n)有F1(使用)、F2(新增)、F3(修改)、F3(删除)、F4(打印)、F5(归档)、F6(部门数据访问)、F7(全部数据访问),所述方法包括如下步骤:
(1)系统超级管理员登录系统,进入系统管理模块;
(2)新建角色Rk(k=1..n)。设置其系统模块Ai的权限,比如具有F1(使用)、F3(修改)、F4(打印)、F6(部门数据访问)权限,根据设置生成二进制文本10101010(比特位位置与权限项下标一一对应),文本转换为十进制数值170,加密存储;
(3)新建角色Rk+1(k=1..n)。设置其系统模块Ai的权限,比如具有F1(使用)、F2(新增)、F3(删除)、F4(打印)、F5(归档)权限,根据设置生成二进制文本11011100,文本转换为十进制数值220,加密存储;
(4)新建系统用户U。设置其所属角色为Rk和Rk+1;设置其系统模块Ai的私有权限,比如具有F7(所有数据访问)权限,根据私有设置生成二进制文本00000001,文本转换为十进制数值1,加密存储;
(5)以上步骤完成了用户U的系统模块Ai的权限分配。用户U登录系统;
(6)登录验证通过后进行权限运算。先遍历用户U所属角色,获取角色Rk和Rk+1对系统模块Ai的解密十进制权限数值,对两个数值170和220进行或运算,结果为254;获取用户U对系统模块Ai的解密私有权限数值1,与角色运算结果254再次进行或运算,结果为255;255即为用户U对系统模块Ai的最终权限值,转换为二进制文本(11111111),解析此文本,结果为用户U对系统模块Ai具有F1(使用)、F2(新增)、F3(修改)、F3(删除)、F4(打印)、F5(归档)、F6(部门数据访问)、F7(全部数据访问)权限。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (2)
1.一种用户及其多角色相结合的权限控制方法,其特征在于,包括如下步骤:
判断用户操作指令类别,当用户操作为数据表建立时,执行数据表建立过程;当用户操作为角色信息维护时,执行角色信息维护过程;当用户操作为登录时,执行用户登录过程;
所述数据表建立过程如下:
根据需求至少建立如下数据表:系统菜单表、菜单功能表、角色信息表、角色权限表、用户信息表、用户角色信息表、用户私有权限表;
所述角色信息维护过程包括如下步骤:
步骤a1:在角色信息表中建立角色基础信息,在用户信息表中建立用户基础信息;
步骤a2:给角色分配菜单数据表的功能项:将角色与分配的菜单及菜单功能项做笛卡尔积,获得角色菜单功能权限值,并存储进角色权限表;
步骤a3:给用户分配角色:将用户与分配的角色做笛卡尔积,获得用户角色信息值,并存储进用户角色信息表;
步骤a4:给用户分配私有权限:将用户与分配的菜单数据表的功能项做笛卡尔积,获得用户私有权限值,并存储进用户私有权限表;
其中,所述角色菜单功能权限值、用户角色信息值、用户私有权限值均为二进制数,将所述角色菜单功能权限值、用户角色信息值、用户私有权限值分别转换成十进制数,再进行对称加密后存储;
所述用户登录过程如下:
根据用户登录信息,获取用户对应的用户私有权限值、用户角色信息值,通过用户角色信息值获取用户对应的角色菜单功能权限值,
将用户私有权限值与角色菜单功能权限值进行或运算,根据计算结果反馈用户所拥菜单,用于展示。
2.如权利要求1所述的用户及其多角色相结合的权限控制方法,其特征在于,所述系统菜单表至少包括:菜单标识、菜单名称;
所述菜单功能表至少包括:菜单标识、功能序号、功能名称;
所述角色信息表至少包括:角色标识、角色名称;
所述角色权限表至少包括:角色标识、菜单标识、权限值;
所述用户信息表至少包括:用户标识、用户名称、密码;
所述用户角色信息表至少包括:用户标识、角色标识;
所述用户私有权限表至少包括:用户标识、菜单标识、权限值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111208502.XA CN113987529B (zh) | 2021-10-18 | 2021-10-18 | 一种用户及其多角色相结合的权限控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111208502.XA CN113987529B (zh) | 2021-10-18 | 2021-10-18 | 一种用户及其多角色相结合的权限控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113987529A CN113987529A (zh) | 2022-01-28 |
CN113987529B true CN113987529B (zh) | 2024-05-24 |
Family
ID=79739030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111208502.XA Active CN113987529B (zh) | 2021-10-18 | 2021-10-18 | 一种用户及其多角色相结合的权限控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113987529B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2012146550A (ru) * | 2012-11-01 | 2014-05-10 | Открытое акционерное общество "Научно-производственное объединение Русские базовые информационные технологии" | Способ обеспечения безопасности информационных потоков в защищенных информационных системах с мандатным и ролевым управлением доступом |
KR20160084997A (ko) * | 2015-01-07 | 2016-07-15 | 충북대학교 산학협력단 | 비밀번호 기반 역할 및 권한 부여 장치 및 방법 |
CN109344601A (zh) * | 2018-10-11 | 2019-02-15 | 四川大学 | 一种角色权限访问控制方法及系统 |
CN110659465A (zh) * | 2019-09-25 | 2020-01-07 | 四川长虹电器股份有限公司 | 一种基于rbac的个性化权限管理方法 |
CN113297550A (zh) * | 2021-06-17 | 2021-08-24 | 中国农业银行股份有限公司 | 权限控制的方法、装置、设备、存储介质及程序产品 |
-
2021
- 2021-10-18 CN CN202111208502.XA patent/CN113987529B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2012146550A (ru) * | 2012-11-01 | 2014-05-10 | Открытое акционерное общество "Научно-производственное объединение Русские базовые информационные технологии" | Способ обеспечения безопасности информационных потоков в защищенных информационных системах с мандатным и ролевым управлением доступом |
KR20160084997A (ko) * | 2015-01-07 | 2016-07-15 | 충북대학교 산학협력단 | 비밀번호 기반 역할 및 권한 부여 장치 및 방법 |
CN109344601A (zh) * | 2018-10-11 | 2019-02-15 | 四川大学 | 一种角色权限访问控制方法及系统 |
CN110659465A (zh) * | 2019-09-25 | 2020-01-07 | 四川长虹电器股份有限公司 | 一种基于rbac的个性化权限管理方法 |
CN113297550A (zh) * | 2021-06-17 | 2021-08-24 | 中国农业银行股份有限公司 | 权限控制的方法、装置、设备、存储介质及程序产品 |
Non-Patent Citations (4)
Title |
---|
基于数据对象的RBAC权限访问控制模型;赵静;杨蕊;姜滦生;;计算机工程与设计;20100816(15);第21-23、57页 * |
赵君 ; 熊燕妮 ; .基于角色和颗粒操作的自定义通用权限管理模型研究.软件导刊.(12),第18-20页. * |
赵静 ; 杨蕊 ; 姜滦生.基于数据对象的RBAC权限访问控制模型.《计算机工程与设计》.2010,第3353-3355、3389页. * |
高瑞 ; 韩斌 ; 王东升 ; 刘嘎琼.基于稀疏索引和哈希表的访问控制策略检索方法.《江苏科技大学学报(自然科学版)》.2021,第50-57页. * |
Also Published As
Publication number | Publication date |
---|---|
CN113987529A (zh) | 2022-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109274731B (zh) | 基于多租户技术的web服务的部署、调用方法和装置 | |
CN108520183B (zh) | 一种数据存储方法及装置 | |
CN112368691A (zh) | 用于文件共享的技术 | |
US9430211B2 (en) | System and method for sharing information in a private ecosystem | |
US10630722B2 (en) | System and method for sharing information in a private ecosystem | |
CN111651738B (zh) | 基于前后端分离架构的细粒度角色权限统一管理方法及电子装置 | |
WO2015013745A1 (en) | Systems and methodologies for managing document access permissions | |
US20170099144A1 (en) | Embedded encryption platform comprising an algorithmically flexible multiple parameter encryption system | |
CN108600282A (zh) | 微服务发布方法、装置、存储介质和计算机设备 | |
WO2016026320A1 (zh) | 访问控制方法及装置 | |
WO2015176461A1 (zh) | 分布式文件系统的文件访问处理、访问方法及装置 | |
CN105488655A (zh) | 一种基于自由流程的公文流转方法 | |
CN115859362A (zh) | 基于区块链侧链的数据存储系统、方法、设备及介质 | |
CN110110550A (zh) | 一种支持云存储的可搜索加密方法及系统 | |
CN101710322A (zh) | 一种信息关联的方法和系统 | |
CN113987529B (zh) | 一种用户及其多角色相结合的权限控制方法 | |
CN113127906A (zh) | 基于c/s架构的统一权限管理平台、方法及存储介质 | |
CN102185897B (zh) | 安全分散式虚拟存储池系统 | |
CN115378736B (zh) | 一种数字化平台的数据处理系统、方法及存储介质 | |
Kumar et al. | Data security and encryption technique for cloud storage | |
CN114969722A (zh) | 一种支撑多数据类型的政务数据隐私计算系统 | |
CN107332840A (zh) | 权限智能管理系统及其方法 | |
CN109657481B (zh) | 数据管理方法及装置 | |
CN112307021A (zh) | 数据处理方法、装置、设备和存储介质 | |
Gao et al. | A novel cp-abe based sidechain protocol for distributed power system data storage management with the blockchain |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |