CN104486357A - 一种基于ssh网站实现rbac访问权限控制的方法 - Google Patents
一种基于ssh网站实现rbac访问权限控制的方法 Download PDFInfo
- Publication number
- CN104486357A CN104486357A CN201410843787.8A CN201410843787A CN104486357A CN 104486357 A CN104486357 A CN 104486357A CN 201410843787 A CN201410843787 A CN 201410843787A CN 104486357 A CN104486357 A CN 104486357A
- Authority
- CN
- China
- Prior art keywords
- role
- user
- authority
- session
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
-
- 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)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于SSH网站实现RBAC访问权限控制的方法,包括以下步骤:用户对页面进行访问请求,判断Session中的用户名变量是否为空,若为空,则跳转到登录页面让用户登录,否则将用户信息保存在所述Session中;用户访问数据库,并将登录成功的用户信息保存在所述session中;ORM模块访问所述数据库,从所述数据库得到访问页面相应的权限信息;触发AOP***,所述APO***从所述Session中得到用户的权限信息;所述AOP***判断用户的权限信息,若包含访问页面相应的权限信息,则用户访问成功,否则访问失败。本发明的有益效果为:逻辑清晰、各个逻辑之间的耦合度低、程序的可重用性高、开发效率高。
Description
技术领域
本发明涉及访问控制及其网站开发技术领域,具体而言,涉及一种基于SSH网站实现RBAC访问权限控制的方法。
背景技术
在现代信息***中,安全管理一直是重要部分。而访问控制技术则是安全信息***的重要环节,它的主要任务是保证资源不被非法使用和访问。基于角色的访问控制(Role-Based Access Control)作为传统访问控制的代替受到了广泛的关注。RBAC包含三个实体:用户、角色和权限。用户是对数据对象进行操作的主体,可以是人、机器人和计算机等。权限是对某一数据对象可操作的权利。角色则是用户和权限的中间桥梁。RBAC通过引进角色的概念实现了用户和权限的逻辑分离,支撑了技术人员与业务人员职责的分离,用户通过获得角色得到权限来对客体进行操作,从而实现权限管理与控制。
但是传统的RBAC在信息***建立时角色种类已经确定,角色和权限之间的关联关系也已经绑定完成,***可扩展性差,并且逻辑之间的耦合度高,程序的可重用性不高、开发效率低。
发明内容
为解决上述问题,本发明的目的在于提供一种逻辑清晰、耦合度低,程序的可重用性高、开发效率高的一种基于SSH网站实现RBAC访问权限控制的方法。
本发明提供了一种基于SSH网站实现RBAC访问权限控制的方法,其特征在于,包括以下步骤:
步骤1,用户对页面进行访问请求,判断Session中的用户名变量是否为空,若为空,则跳转到登录页面让用户登录,否则将用户信息保存在所述Session中;
步骤2,用户访问数据库,并将登录成功的用户信息保存在所述session中;
步骤3,ORM模块访问所述数据库,从所述数据库得到访问页面相应的权限信息;
步骤4,触发AOP***,所述APO***从所述Session中得到用户的权限信息;
步骤5,所述AOP***判断用户的权限信息,若包含步骤3得到的权限信息,则用户访问成功,否则访问失败。
其中,所述数据库包括:
用户表,包括用户编码及用户名,用于储存用户信息;
角色表,包括角色编码及角色名,用于储存角色信息;
权限表,包括权限编码、权限名和URL地址,用于储存具体的权限信息;
用户角色表,包括用户编码和角色编码,实现用户和角色的多对多映射;
角色权限表:包括角色编码和权限编码,实现角色和权限的多对多映射;
所述角色表通过所述用户角色表与所述用户表进行多对多的关联;
所述角色表通过所述角色权限表与所述权限表进行多对多关联。
作为本发明进一步的改进,所述角色表中加入父类角色编码用以适应角色的分级。
作为本发明进一步的改进,所述用户信息、所述角色信息和所述权限信息均以变量名的形式储存在session中。
本发明的有益效果为:
1、通过数据库的设计,将用户和权限的逻辑很好的分离开,各个逻辑之间的耦合度降低;
2、通过ORM模块对数据库访问和AOP***对访问用户权限的检查,使得程序的可重用性高、开发效率高。
附图说明
图1为本发明实施例所述的一种数据库的结构图。
图2为本发明实施例所述的一种基于SSH网站实现RBAC访问权限控制的方法的流程图;
具体实施方式
下面通过具体的实施例并结合附图对本发明做进一步的详细描述。
如图1所示,本发明的数据库包括:
用户表,包括用户编码userid及用户名username,用于储存用户信息;
角色表,包括角色编码roleid及角色名rolename,用于储存角色信息;
权限表,包括权限编码rightid、权限名rightname和URL地址,用于储存具体的权限信息;
用户角色表,包括用户编码userid和角色编码roleid,实现用户和角色的多对多映射;
角色权限表:包括角色编码roleid和权限编码rightid,实现角色和权限的多对多映射;
所述角色表通过所述用户角色表与所述用户表进行多对多的关联;
所述角色表通过所述角色权限表与所述权限表进行多对多关联。
如图2所示,本发明实施例所述的一种基于SSH网站实现RBAC访问权限控制的方法,包括以下步骤:
步骤1,用户对页面进行访问请求,判断Session中的username变量是否为空,若为空,则跳转到登录页面让用户登录,否则将用户信息保存在所述Session中;
步骤2,用户访问数据库,并将登录成功的用户信息保存在所述session中;
步骤3,ORM模块访问所述数据库,从所述数据库得到访问页面相应的权限信息;
步骤4,触发AOP***,所述APO***从所述Session中得到用户的权限信息;
步骤5,所述AOP***判断用户的权限信息,若包含步骤3得到的权限信息,则用户访问成功,否则访问失败。
由于用户访问的时候是通过页面来访问,输入的时候就是一个URL地址,而用户拥有的权限是通过编码来标识的,这就需要在URL地址与权限编码之间建立一个关联。由于URL地址与权限的关联保存在数据库中,这就需要通过ORM模块来访问数据库,以实现查询URL地址所对应的权限。
用户登录时,会把用户所拥有的用户编码userid、用户名username、角色编码roleid、角色名rolename、权限编码rightid、权限名rightname和URL地址以变量名的形式存储在Session中,已备需要时调用。当用户访问某个页面时,就触发AOP***,AOP***从Session中获得用户权限信息,与ORM模块得到的权限信息进行比较,以判断是否有访问此页面的权限,实现访问控制。
作为本发明进一步的改进,所述角色表中加入父类角色编码用以适应角色的分级。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于SSH网站实现RBAC访问权限控制的方法,其特征在于,包括以下步骤:
步骤1,用户对页面进行访问请求,判断Session中的用户名变量是否为空,若为空,则跳转到登录页面让用户登录,否则将用户信息保存在所述Session中;
步骤2,用户访问数据库,并将登录成功的用户信息保存在所述session中;
步骤3,ORM模块访问所述数据库,从所述数据库得到访问页面相应的权限信息;
步骤4,触发AOP***,所述APO***从所述Session中得到用户的权限信息;
步骤5,所述AOP***判断用户的权限信息,若包含步骤3得到的权限信息,则用户访问成功,否则访问失败。
2.根据权利要求1所述的一种基于SSH网站实现RBAC访问权限控制的方法,其特征在于,所述数据库包括:
用户表,包括用户编码及用户名,用于储存用户信息;
角色表,包括角色编码及角色名,用于储存角色信息;
权限表,包括权限编码、权限名和URL地址,用于储存具体的权限信息;
用户角色表,包括用户编码和角色编码,实现用户和角色的多对多映射;
角色权限表:包括角色编码和权限编码,实现角色和权限的多对多映射;
所述角色表通过所述用户角色表与所述用户表进行多对多的关联;
所述角色表通过所述角色权限表与所述权限表进行多对多关联。
3.根据权利要求2所述的一种基于SSH网站实现RBAC访问权限控制的方法,其特征在于,所述角色表中加入父类角色编码用以适应角色的分级。
4.根据权利要求2所述的一种基于SSH网站实现RBAC访问权限控制的方法,其特征在于,所述用户信息、所述角色信息和所述权限信息均以变量名的形式储存在session中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410843787.8A CN104486357A (zh) | 2014-12-30 | 2014-12-30 | 一种基于ssh网站实现rbac访问权限控制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410843787.8A CN104486357A (zh) | 2014-12-30 | 2014-12-30 | 一种基于ssh网站实现rbac访问权限控制的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104486357A true CN104486357A (zh) | 2015-04-01 |
Family
ID=52760861
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410843787.8A Pending CN104486357A (zh) | 2014-12-30 | 2014-12-30 | 一种基于ssh网站实现rbac访问权限控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104486357A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105262780A (zh) * | 2015-11-27 | 2016-01-20 | 国网信息通信产业集团有限公司 | 一种权限控制方法及*** |
CN107147671A (zh) * | 2017-06-19 | 2017-09-08 | 上海斐讯数据通信技术有限公司 | 一种基于网站路由访问权限控制方法、访问方法及*** |
CN109472127A (zh) * | 2018-10-11 | 2019-03-15 | 北京三快在线科技有限公司 | 权限处理方法、装置、应用侧设备和存储介质 |
CN110727929A (zh) * | 2019-10-12 | 2020-01-24 | 北京明略软件***有限公司 | 基于aop的行级权限控制方法、装置及客户端 |
CN110750747A (zh) * | 2019-10-22 | 2020-02-04 | 杭州安恒信息技术股份有限公司 | 一种页面跳转方法、装置、设备及可读存储介质 |
CN110971563A (zh) * | 2018-09-28 | 2020-04-07 | 北京国双科技有限公司 | 权限信息的处理方法及装置 |
CN111625842A (zh) * | 2019-02-28 | 2020-09-04 | 武汉朗立创科技有限公司 | 一种基于rbac的权限控制*** |
CN114091035A (zh) * | 2021-11-17 | 2022-02-25 | 中国平安人寿保险股份有限公司 | 越权校验方法、装置、设备与存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140157350A1 (en) * | 2012-12-03 | 2014-06-05 | Microsoft Corporation | Role-based access control modeling and auditing system |
CN104052747A (zh) * | 2014-06-23 | 2014-09-17 | 桂林长海科技有限责任公司 | 一种基于rbac的权限管理*** |
CN104063636A (zh) * | 2013-03-22 | 2014-09-24 | 鸿富锦精密工业(深圳)有限公司 | 角色权限控制方法及*** |
CN104243453A (zh) * | 2014-08-26 | 2014-12-24 | 中国科学院信息工程研究所 | 基于属性和角色的访问控制方法及*** |
-
2014
- 2014-12-30 CN CN201410843787.8A patent/CN104486357A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140157350A1 (en) * | 2012-12-03 | 2014-06-05 | Microsoft Corporation | Role-based access control modeling and auditing system |
CN104063636A (zh) * | 2013-03-22 | 2014-09-24 | 鸿富锦精密工业(深圳)有限公司 | 角色权限控制方法及*** |
CN104052747A (zh) * | 2014-06-23 | 2014-09-17 | 桂林长海科技有限责任公司 | 一种基于rbac的权限管理*** |
CN104243453A (zh) * | 2014-08-26 | 2014-12-24 | 中国科学院信息工程研究所 | 基于属性和角色的访问控制方法及*** |
Non-Patent Citations (2)
Title |
---|
任翔: "基于J2EE权限管理***平台设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
郭文龙等: "基于SSH框架的RBAC设计与实现", 《软件》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105262780A (zh) * | 2015-11-27 | 2016-01-20 | 国网信息通信产业集团有限公司 | 一种权限控制方法及*** |
CN105262780B (zh) * | 2015-11-27 | 2018-12-18 | 国网信息通信产业集团有限公司 | 一种权限控制方法及*** |
CN107147671A (zh) * | 2017-06-19 | 2017-09-08 | 上海斐讯数据通信技术有限公司 | 一种基于网站路由访问权限控制方法、访问方法及*** |
CN110971563A (zh) * | 2018-09-28 | 2020-04-07 | 北京国双科技有限公司 | 权限信息的处理方法及装置 |
CN110971563B (zh) * | 2018-09-28 | 2022-10-04 | 北京国双科技有限公司 | 权限信息的处理方法及装置 |
CN109472127A (zh) * | 2018-10-11 | 2019-03-15 | 北京三快在线科技有限公司 | 权限处理方法、装置、应用侧设备和存储介质 |
CN111625842A (zh) * | 2019-02-28 | 2020-09-04 | 武汉朗立创科技有限公司 | 一种基于rbac的权限控制*** |
CN110727929A (zh) * | 2019-10-12 | 2020-01-24 | 北京明略软件***有限公司 | 基于aop的行级权限控制方法、装置及客户端 |
CN110727929B (zh) * | 2019-10-12 | 2021-07-30 | 北京明略软件***有限公司 | 基于aop的行级权限控制方法、装置及客户端 |
CN110750747A (zh) * | 2019-10-22 | 2020-02-04 | 杭州安恒信息技术股份有限公司 | 一种页面跳转方法、装置、设备及可读存储介质 |
CN114091035A (zh) * | 2021-11-17 | 2022-02-25 | 中国平安人寿保险股份有限公司 | 越权校验方法、装置、设备与存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104486357A (zh) | 一种基于ssh网站实现rbac访问权限控制的方法 | |
CN109614823B (zh) | 一种数据的处理方法、装置及设备 | |
US8590003B2 (en) | Controlling access to resources by hosted entities | |
US9218481B2 (en) | Managing password strength | |
CN106471466B (zh) | 短暂应用 | |
CN102904889B (zh) | 支持跨平台统一管理的强制访问控制***及方法 | |
CN104102880B (zh) | 一种检测Android权限提升攻击的应用程序重写方法和*** | |
CN104954383A (zh) | 一种应用程序登录方法及*** | |
US20180054456A1 (en) | Website security tracking across a network | |
US10740286B1 (en) | Migration task validation before data migration | |
US20220294788A1 (en) | Customizing authentication and handling pre and post authentication in identity cloud service | |
US10135913B2 (en) | Impact analysis system and method | |
CN106446638A (zh) | 一种云计算操作***安全访问方法及装置 | |
US10891357B2 (en) | Managing the display of hidden proprietary software code to authorized licensed users | |
US20220229657A1 (en) | Extensible resource compliance management | |
US11785082B2 (en) | Domain replication across regions | |
Mathas et al. | On the design of IoT security: Analysis of software vulnerabilities for smart grids | |
TWI716385B (zh) | 鑒權方法及鑒權裝置 | |
CN105069366A (zh) | 一种账户登录和管理方法及装置 | |
US9037609B1 (en) | Method for determining access of queries | |
US9330276B2 (en) | Conditional role activation in a database | |
CN109683942B (zh) | 脚本管理方法、装置、介质及电子设备 | |
US10482279B2 (en) | Pattern-less private data detection on data sets | |
CN111131205B (zh) | 基于Restful接口的权限管理方法和装置 | |
CN107239476A (zh) | 一种轻量级sql数据库网站的开发方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150401 |
|
RJ01 | Rejection of invention patent application after publication |