CN110245499B - Web应用权限管理方法及系统 - Google Patents
Web应用权限管理方法及系统 Download PDFInfo
- Publication number
- CN110245499B CN110245499B CN201910379713.6A CN201910379713A CN110245499B CN 110245499 B CN110245499 B CN 110245499B CN 201910379713 A CN201910379713 A CN 201910379713A CN 110245499 B CN110245499 B CN 110245499B
- Authority
- CN
- China
- Prior art keywords
- authority
- group
- user
- owned
- function
- 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
Images
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
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
本发明公开了一种Web应用权限管理方法及系统,涉及Web权限管理领域,其中,Web应用权限管理方法通过扫描系统功能和对应的权限属性,生成功能权限映射缓存,然后根据功能权限映射缓存创建不同功能所需的权限组,并将创建者拥有的部分或者全部权限赋予权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员,同时获取用户登陆操作信息,根据用户拥有的权限对登陆的用户进行授权,并将用户拥有的权限与用户的会话控制进行绑定。本发明实施例的方案,开发不侵入业务,开发者只需在开发过程中为功能标注对应的权限属性,后续的权限管理操作由用户根据具体需要自行控制。相比较现有方案,能够保证基本的权限安全性,并且开发维护成本低,面对用户时灵活性强。
Description
技术领域
本发明涉及Web权限管理领域,尤其是一种Web应用权限管理方法及系统。
背景技术
如今,企业管理大都是通过计算机来辅助进行,因此保障信息安全就变得非常重要。企业中不同级别人员的权限各不相同,随之而来是企业对所使用系统中权限管理的要求也越来越严格。目前常用的有Shiro和Spring Security的开源权限管理方案和阿里云、腾讯云、亚马逊云等云服务商提供的权限管理方案,开源权限管理方案都需要大量的配置表/数据表来维护用户、角色、权限和菜单之间的关系,其开发成本和维护成本都相对较大,往往开发人员完成了功能开发,还需要进行对应的权限、角色和菜单配置等,即便是忽略多余的开发成本,用户在自行调整权限时,灵活度也十分受限,例如Shiro的角色权限,必须由开发人员提前配置好,而云服务商的权限管理方案大多采用集中授权模式,即有一台甚至一个集群的服务器专门用于控制权限,且本身服务也相对复杂,并不适用于中小企业使用。
因此需要提出一种能够在保证基本的权限安全性的基础上,降低开发维护成本,不侵入业务,且面向用户时灵活性强、方便好用的权限管理方法。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的目的是提供一种在保证基本的权限安全性的基础上,降低开发维护成本,无需侵入业务,且面向用户时灵活性强、方便好用的权限管理方法及系统。
本发明实施例所采用的技术方案是:
第一方面,本发明提供一种Web应用权限管理方法,包括
扫描系统功能和对应的权限属性,生成功能权限映射缓存;
根据所述功能权限映射缓存创建权限组,并将创建者拥有的部分或者全部权限,赋予所述权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员;
获取用户登陆操作信息,根据所述用户拥有的权限对登陆的用户进行授权,并将所述用户拥有的权限与所述用户的会话控制进行绑定。
进一步地,所述权限传递具体为:
所述权限组中的所有成员均能够继承所述权限组的有效权限;
并且所述成员能够将继承到的所述有效权限继续传递。
进一步地,所述有效权限指:对创建时赋予的所述权限组的原始权限和所述创建者本身拥有并赋予所述权限组的权限之间取交集构成所述有效权限。
进一步地,用户拥有的权限指:所述用户本身拥有的权限和继承自权限组的有效权限之间,取并集构成权限组中成员拥有的权限。
进一步地,当移除所述创建者拥有的部分权限后,继承所述部分权限的成员的所述部分权限也被移除。
进一步地,所述权限属性包括所述功能是否需要鉴权和/或所述功能是否能够作为菜单和/或是否为公共权限。
第二方面,本发明实施例还提供一种Web应用权限管理系统,包括:
权限扫描模块:用于扫描系统功能和对应的权限属性,生成功能权限映射缓存;
权限传递模块:用于根据所述功能权限映射缓存创建权限组,并将创建者拥有的部分或者全部权限,赋予所述权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员;
登陆授权模块:用于获取用户登陆操作信息,根据所述用户拥有的权限对登陆的用户进行授权,并将所述用户拥有的权限与所述用户的会话控制进行绑定。
第三方面,本发明实施例提供一种Web应用权限管理设备,包括:
至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行如第一方面任一项所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面任一项所述的方法。
本发明实施例的有益效果是:
本发明实施例通过扫描系统功能和对应的权限属性,生成功能权限映射缓存,然后根据功能权限映射缓存创建不同功能所需的权限组,并将创建者拥有的部分或者全部权限赋予权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员,同时获取用户登陆操作信息,根据用户拥有的权限对登陆的用户进行授权,并将用户拥有的权限与用户的会话控制进行绑定。
本发明实施例的方案中,开发不侵入业务,开发者只需在开发过程中为功能标注对应的权限属性,后续的权限管理操作由用户根据具体需要自行控制。相比较现有方案,其开发维护成本低,并且避免了其他权限管理解决方案中,需要让用户去自己配置系统有的功能、以及对应的权限标识(比如请求地址)等用户不友好的操作,本发明实施例通过扫描的方式自动维护了相关的权限内容,无需开发人员和用户进行相关配置,因此面对用户时灵活性强。用户通过创建不同的权限组分配不同用户对应的权限,并在登陆操作的过程中,完成授权动作,将用户所拥有的的权限与用户的会话控制进行绑定,如果用户权限发生变化,则需要退出登陆重新授权,能够保证基本的权限安全性。
附图说明
图1是本发明实施例一的Web应用权限管理方法实现流程图;
图2是本发明实施例一的Web应用权限管理方法的功能权限属性示意图;
图3是本发明实施例一的Web应用权限管理方法的权限组关系结构示意图;
图4是本发明实施例一的Web应用权限管理方法的一具体实例;
图5是本发明实施例一的Web应用权限管理系统的结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
实施例一:
本发明实施例一提供一种Web应用权限管理方法,图1为本发明实施例提供的一种Web应用权限管理方法的实现流程图,如图1所示,该方法包括以下步骤:
S1:扫描系统功能和对应的权限属性,生成功能权限映射缓存。
本实施例中,开发者开发功能过程中,使用注解的方式,标注功能的权限属性,功能和权限之间有绑定关系,开发者只需完成功能开发即可,无需维护权限配置等繁琐操作,在权限管理过程中,权限功能和业务表分离,无需侵入业务,所有的权限管理均由用户通过对应的功能自行控制,无需开发人员配置数据表或配置文件去记录当前系统中所有功能,进而对这些功能设置相应的权限,本实施例中开发者和用户都不需要侵入对方的业务领域,减少了权限维护成本。
系统扫描所有的可用功能,并根据每个功能的权限属性,生成功能权限映射缓存。如图2所示,为本实施例的功能权限属性示意图,权限属性包括如功能名称、是否需要鉴权、该功能是否能够作为菜单、是否为公共权限等。
在系统迭代过程中,即便功能所对应的的权限标识发生变化,系统通过扫描的方式,自动维护系统中的权限标识,避免了开发人员或者用户去手动维护记录权限标识的表或文件,减少了维护成本。
S2:创建业务组并进行权限传递,具体是:根据功能权限映射缓存以及业务需求,创建不同业务的权限组,并将创建者拥有的部分或者全部权限,赋予权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员。
本实施例中,用户和权限之间的绑定关系是由用户根据业务需求自行定制的,首先默认生成一个具有最高权限的root账户,该root用户拥有系统中所有的权限。用户可以根据业务需求自由定制自己的菜单,并创建不同业务权限组,并自行定制权限功能,以及将相关的用户拉入自己创建的权限组作为权限组的成员,当一个用户加入到一个权限组成为其中成员(成员之间无关联)之后,就能够继承所在权限组的有效权限,并且能够将继承到的有效权限在自己作为创建者的权限组中继续传递。
现有常见的通过角色、用户组来对授权进行管理的方式并不灵活,并且系统中“角色/权限管理功能”的权限十分敏感,很大程度上限制了只能有一个超级管理员拥有此权限,需要该超级管理员对所有用户、角色的权限进行分配。而本实施例中,通过权限组的方式传递权限,允许用户在自己的权限范围内进一步自定义权限,使得每个用户(或仅允许一定级别以上的用户,如组长)能够自由的为下属放权,无需最高级的超级管理员参与,用户使用灵活多变。
如图3所示,为本实施中权限组关系结构示意图,用户表中存储用户ID,权限组表中存储权限组ID和创建者的用户ID,其中权限组ID用于区分不同业务的权限组,权限组-用户关联表用于存储当前权限组ID和其中成员的用户ID,权限组-权限关联表用于存储权限组ID以及对应配置的权限KEY,权限Key是通过自动扫描的方法自动生成的。
本实施例的有效权限指:对创建时赋予的该权限组的原始权限和创建者本身拥有并赋予该权限组的权限之间,取交集构成,即创建者拥有某种权限,并将这种权限赋予这个权限组,此时的权限才能作为有效权限的一部分。对应的,用户拥有的权限指:该用户本身拥有的权限和继承自所在权限组(可以为多个权限组)的有效权限之间,取并集构成。
这种继承机制确保,当上一级管理者收回或移除某一个用户拥有的部分权限后,通过继承拥有这部分被移除权限的成员的相关权限也被移除,即权限传递过程中,源头的权限被移除,传递出去的这项权限也统一被收回,能够避免因为人员调动,导致需要通过复杂的方法进行大范围权限更改的问题。
S3:对用户进行授权,具体是:获取用户登陆操作信息,根据用户拥有的权限对登陆的用户进行授权,并将用户拥有的权限与用户的会话控制session进行绑定。授权之后,以后用户的访问均在会话控制内部鉴权,如果权限发生变化,则需要用户退出登陆再重新登录以获得授权,这样能够保证基本的权限安全性。
如图4所示,为本实施例的一种Web应用权限管理方法的一具体实例,从图中可以看出有一个root用户,拥有系统所有权限,其权限分为财务相关权限、运营相关权限和行政相关权限,并根据其拥有的权限创建不同业务需求的权限组,包括:财务权限组、运营权限组和行政权限组,以运营权限组为例,其有运营主管,运营主管拥有客服权限和活动权限,分别创建拥有客服权限的客户客服组和拥有活动权限的业务运营组,其中,客户客服组成员包括:客服A和客服B,业务运营组包括业余员A和业务员B。例如客服A通过权限传递继承自运营主管的部分权限,运营主管的权限继承自root用户的权限中。
本实施例的方法不侵入业务,开发者只需在开发过程中为功能标注对应的权限属性,后续的权限管理操作由用户根据具体需要自行控制。相比较现有方案,能够保证基本的权限安全性,且其开发维护成本低,面对用户时灵活性强。
实施例二:
如图5所示,为本实施例的一种Web应用权限管理系统结构示意图,包括:
权限扫描模块10:用于扫描系统功能和对应的权限属性,生成功能权限映射缓存;
权限传递模块20:用于根据功能权限映射缓存创建权限组,并将创建者拥有的部分或者全部权限,赋予该权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员。
登陆授权模块30:用于获取用户登陆操作信息,根据用户拥有的权限对登陆的用户进行授权,并将用户拥有的权限与用户的会话控制进行绑定,授权之后,以后用户的访问均在会话控制内部鉴权,如果权限发生变化,则需要用户退出登陆再重新登录以获得授权,这样能够保证基本的权限安全性。
另外,本发明还提供一种Web应用权限管理设备,包括:
至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行如实施例一所述的方法。
另外,本发明还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,其中计算机可执行指令用于使计算机执行如实施例一所述的方法。
以上各实施例仅用以说明本发明的技术方案,而非对其限制,尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (7)
1.一种Web应用权限管理方法,其特征在于,包括
扫描系统功能和对应的权限属性,生成功能权限映射缓存;
根据所述功能权限映射缓存创建权限组,并将创建者拥有的部分或者全部权限,赋予所述权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员;
获取用户登陆操作信息,根据所述用户拥有的权限对登陆的用户进行授权,并将所述用户拥有的权限与所述用户的会话控制进行绑定;
所述有效权限指:对创建时赋予的所述权限组的原始权限和所述创建者本身拥有并赋予所述权限组的权限之间取交集,构成所述有效权限;
所述用户拥有的权限指:所述用户本身拥有的权限和继承自权限组的有效权限之间取并集,构成权限组中成员拥有的权限。
2.根据权利要求1所述的一种Web应用权限管理方法,其特征在于,所述权限传递具体为:
所述权限组中的所有成员均能够继承所述权限组的有效权限;
并且所述成员能够将继承到的所述有效权限继续传递。
3.根据权利要求1所述的一种Web应用权限管理方法,其特征在于,当移除所述创建者拥有的部分权限后,继承所述部分权限的成员的所述部分权限也被移除。
4.根据权利要求1所述的一种Web应用权限管理方法,其特征在于,所述权限属性包括所述功能是否需要鉴权和/或所述功能是否能够作为菜单和/或是否为公共权限。
5.一种Web应用权限管理系统,其特征在于,包括:
权限扫描模块:用于扫描系统功能和对应的权限属性,生成功能权限映射缓存;
权限传递模块:用于根据所述功能权限映射缓存创建权限组,并将创建者拥有的部分或者全部权限,赋予所述权限组,并通过权限传递将所述权限组的有效权限传递给权限组成员;
登陆授权模块:用于获取用户登陆操作信息,根据所述用户拥有的权限对登陆的用户进行授权,并将所述用户拥有的权限与所述用户的会话控制进行绑定。
6.一种Web应用权限管理设备,其特征在于,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行如权利要求1至4任一项所述的方法。
7.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910379713.6A CN110245499B (zh) | 2019-05-08 | 2019-05-08 | Web应用权限管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910379713.6A CN110245499B (zh) | 2019-05-08 | 2019-05-08 | Web应用权限管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245499A CN110245499A (zh) | 2019-09-17 |
CN110245499B true CN110245499B (zh) | 2023-02-28 |
Family
ID=67883886
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910379713.6A Active CN110245499B (zh) | 2019-05-08 | 2019-05-08 | Web应用权限管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110245499B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111368286A (zh) * | 2020-02-28 | 2020-07-03 | 深圳前海微众银行股份有限公司 | 权限控制方法、装置、设备及存储介质 |
CN111428252B (zh) * | 2020-03-20 | 2023-03-21 | 郑州阿帕斯数云信息科技有限公司 | 用户权限控制方法和装置 |
CN111709050A (zh) * | 2020-05-21 | 2020-09-25 | 四川虹美智能科技有限公司 | 初始化权限配置参数的方法及装置 |
CN112597508A (zh) * | 2020-11-20 | 2021-04-02 | 深圳市世强元件网络有限公司 | 一种服务平台用户权限管理方法及计算机设备 |
CN112507322A (zh) * | 2020-12-03 | 2021-03-16 | 东莞中国科学院云计算产业技术创新与育成中心 | 权限管理方法和装置、服务器、计算机可读存储介质 |
CN114595484B (zh) * | 2022-05-10 | 2022-08-16 | 上海柯林布瑞信息技术有限公司 | 页面权限控制方法及装置 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8224873B1 (en) * | 2008-05-22 | 2012-07-17 | Informatica Corporation | System and method for flexible security access management in an enterprise |
CN101459542B (zh) * | 2008-12-29 | 2015-05-13 | 深圳市同洲电子股份有限公司 | 一种对管理员进行权限控制的方法、装置及管理系统 |
CN102236876A (zh) * | 2010-04-27 | 2011-11-09 | 兰州交通大学 | 一种机场货运站仓储监控管理方法 |
WO2012066595A1 (en) * | 2010-11-17 | 2012-05-24 | Hitachi, Ltd. | File storage apparatus and access control method |
CN102055763B (zh) * | 2010-12-14 | 2013-04-03 | 山东中创软件工程股份有限公司 | 一种权限管理方法及系统 |
CN102932340A (zh) * | 2012-10-25 | 2013-02-13 | 上海电机学院 | 基于角色的访问控制系统及方法 |
CN102968599B (zh) * | 2012-10-25 | 2016-05-04 | 北京邮电大学 | 基于资源发布者自定义的访问控制系统及方法 |
CN103051630B (zh) * | 2012-12-21 | 2016-01-27 | 微梦创科网络科技(中国)有限公司 | 基于开放平台实现第三方应用授权的方法、装置及系统 |
CN103632082B (zh) * | 2013-12-10 | 2016-08-17 | 惠州华阳通用电子有限公司 | 一种通用权限管理系统及方法 |
CN103888265B (zh) * | 2014-04-11 | 2017-07-25 | 上海博路信息技术有限公司 | 一种基于移动终端的应用登录系统和方法 |
CN104462903B (zh) * | 2014-12-15 | 2019-01-08 | 北京国双科技有限公司 | 业务系统权限的处理方法和装置 |
CN105763593B (zh) * | 2014-12-19 | 2020-01-24 | 中兴通讯股份有限公司 | 多用户共享环境下的设备共享方法、装置、服务器及终端 |
CN105978994B (zh) * | 2016-06-22 | 2019-01-18 | 武汉理工大学 | 一种面向Web系统的登录方法 |
CN106230818A (zh) * | 2016-08-01 | 2016-12-14 | 浪潮(苏州)金融技术服务有限公司 | 一种信息管理系统的资源授权方法 |
CN107844708A (zh) * | 2017-11-06 | 2018-03-27 | 中国电子科技集团公司第二十八研究所 | 面向装备管理业务的数据权限控制系统及其控制方法 |
-
2019
- 2019-05-08 CN CN201910379713.6A patent/CN110245499B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110245499A (zh) | 2019-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245499B (zh) | Web应用权限管理方法及系统 | |
US11750609B2 (en) | Dynamic computing resource access authorization | |
US10735472B2 (en) | Container authorization policies for network trust | |
RU2598324C2 (ru) | Средства управления доступом к онлайновой службе с использованием внемасштабных признаков каталога | |
US10848520B2 (en) | Managing access to resources | |
US10911428B1 (en) | Use of metadata for computing resource access | |
US11102189B2 (en) | Techniques for delegation of access privileges | |
CA2649862C (en) | Translating role-based access control policy to resource authorization policy | |
US8010991B2 (en) | Policy resolution in an entitlement management system | |
US7827598B2 (en) | Grouped access control list actions | |
US8056119B2 (en) | Method and system for controlling inter-zone communication | |
US8065741B1 (en) | Method and apparatus for locally caching digital rights information | |
US8990896B2 (en) | Extensible mechanism for securing objects using claims | |
US20090276840A1 (en) | Unified access control system and method for composed services in a distributed environment | |
US20070300297A1 (en) | System and Method for Tracking the Security Enforcement in a Grid System | |
US11126460B2 (en) | Limiting folder and link sharing | |
CN111695108B (zh) | 一种异构计算环境中多源账号的用户统一账号标识系统 | |
US11778539B2 (en) | Role-based access control system | |
US20240248979A1 (en) | Persistent source values for assumed alternative identities | |
US20230025808A1 (en) | Security and governance policies in electronic signature systems | |
US11153377B1 (en) | Shared channel invitation paths | |
US7523506B1 (en) | Approach for managing functionalities within a system | |
US10242174B2 (en) | Secure information flow | |
US11616782B2 (en) | Context-aware content object security | |
US11663356B1 (en) | Methods and apparatus for dynamic data access provisioning |
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 |