CN106778306A - 一种基于JavaEJB框架的权限设计方法 - Google Patents
一种基于JavaEJB框架的权限设计方法 Download PDFInfo
- Publication number
- CN106778306A CN106778306A CN201611168283.6A CN201611168283A CN106778306A CN 106778306 A CN106778306 A CN 106778306A CN 201611168283 A CN201611168283 A CN 201611168283A CN 106778306 A CN106778306 A CN 106778306A
- Authority
- CN
- China
- Prior art keywords
- user
- class
- authority
- module
- many
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/24—Object-oriented
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及Java EJB框架技术领域,特别涉及一种基于Java Swing平台的权限设计方案。本发明方法在创建用户时,先设定用户将要访问的模块的路径、名称及层次,并在模块自定义一系列的权限,分配这些角色与权限给用户,控制权限模块判断用户的权限。本发明提供用户自定义权限,还可控制层级权限,并能精准到用户对每个按钮的访问权限控制,从而达到系统能够细粒度地控制到每个用户只能访问自己拥有权限的模块的目的,本套权限设计方案可适用于大型ERP系统的权限控制。
Description
技术领域
本发明涉及Java EJB框架技术领域,特别涉及一种基于Java Swing平台的权限设计方法。
背景技术
当在Java Swing平台下使用EJB框架开发的系统不能使用URL来控制用户访问模块的权限,即当进行用户访问控制时,由于Java Swing平台下的各个模块比较独立,关联少,更不能像Web平台下控制用户访问URL地址一样来控制其要访问的资源,就不能良好地控制用户访问模块的权限。
发明内容
本发明解决的技术问题在于提供一种基于EJB框架权限设计方法,提供一套根据用户自定义模块的路径及层次来控制的权限方案,解决Swing平台下不能细粒度控制用户访问权限问题。
本发明解决上述技术问题的技术方案是,
在创建用户时,先设定用户将要访问的模块的路径、名称及层次,并在模块自定义一系列的权限,分配这些角色与权限给用户,控制权限模块判断用户的权限。
具体包含以下几个步骤:
步骤一:创建用户类,封装用户工号、密码、昵称等信息,主要用来处理权限关联与系统登陆,部门类,包括部门名称基本属性等,用户角色类与系统角色类,用户角色主要用来搭建系统角色与用户之间的桥梁,用户权限类与系统权限类,用户权限主要用来搭建系统权限与用户及系统角色之间的桥梁,模块类,添加必要属性路径、名称与层级;
步骤二:在用户类里设置与用户角色类一对多关系,与部门类的多对一关系,与用户权限类一对多关系,在用户角色类里设置与用户类的多对一关系,与系统角色类的多对一关系,在用户权限类里设置与用户类的多对一关系,与系统角色类的多对一关系,与系统权限类的多对一关系,在模块类设置与系统权限类的一对多关系,与父模块类的多对一关系;
步骤三:开发一个前台页面,可读出所有的模块的树状结构信息,并可在相应的模块下添加子模块的名称、路径与层级及相关的增删改查权限等;
步骤四:分配这些角色与权限给用户,当用户登陆系统时,加载其相关的角色与权限,并存储到Swing里的Application容器里;
步骤五:控制权限模块判断用户的权限集合是否包含模块里的路径,如果返回true,说明有权限,反之则没权限。
本发明的有益效果如下:
用户不但可以自定义权限,还可以层级权限控制,并能精准到用户对每个按钮的访问权限控制,从而达到系统能够细粒度地控制到每个用户只能访问自己拥有权限的模块的目的。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明的方法流程图。
图2为本发明的前台页面布局。
具体实施方式
如图1所示,本发明采用如下步骤:
步骤一、创建用户类User,封装用户工号、密码、昵称等信息,主要用来处理权限关联与登陆;如:
步骤二、创建部门类Department,包括部门名称基本属性等,在User类设置与Department类的多对一关系;
步骤三、创建用户角色类UserRole与系统角色类Role,用户角色主要用来搭建Role与User之间的桥梁;如:
步骤四、创建用户权限类UserPower与系统权限类Power,用户权限主要用来搭建Power与User及Role之间的桥梁;如:
步骤五、在User类里设置与UserRole的一对多关系,与UserPower的一对多关系;如:
步骤六、在UserRole类里设置与User类的多对一关系,与Role的多对一关系;如:
步骤七、在UserPower类里设置与User类的多对一关系,与Role的多对一关系,与Power的多对一关系;如:
步骤八、创建模块类Module,添加必要属性路径、名称与层级,并设置与Power的一对多关系,与父Module的多对一关系;
步骤九、开发一个前台页面,可读出所有的模块的树状结构信息,并可在相应的模块下添加子模块的名称、路径与层级,并能添加对应模块的权限;
步骤十、当用户登陆系统时,加载其相关的角色与权限,并存储到Swing里的Application容器里;
步骤十一、在要控制权限的模块里判断用户的权限集合是否包含Modul里的路径,如果返回true,说明有权限,反之则没权限。如:
相关isInPower函数代码:
图2为本发明的前台页面布局,前台页面包含功能模块列表,显示名称,路径名称,备注,顺序号和权限列表,功能模块列表里包括:功能模块,基础资料,任务管理和人力资源管理,权限列表包括权限名称和序号。
Claims (2)
1.一种基于Java EJB框架的权限设计方法,其特征在于,包括如下步骤:
在创建用户时,先设定用户将要访问的模块的路径、名称及层次,并在模块自定义一系列的权限,分配这些角色与权限给用户,控制权限模块判断用户的权限。
2.根据权利要求1所述的方法,其特征在于,具体包含以下几个步骤:
步骤一:创建用户类,封装用户工号、密码、昵称等信息,主要用来处理权限关联与系统登陆;部门类,包括部门名称基本属性等;用户角色类与系统角色类,用户角色主要用来搭建系统角色与用户之间的桥梁;用户权限类与系统权限类,用户权限主要用来搭建系统权限与用户及系统角色之间的桥梁;模块类,添加必要属性路径、名称与层级;
步骤二:在用户类设置与部门类的多对一关系;在用户类里设置与用户角色类一对多关系,与用户权限类一对多关系;在用户角色类里设置与用户类的多对一关系,与系统角色类的多对一关系;在用户权限类里设置与用户类的多对一关系,与系统角色类的多对一关系,与系统权限类的多对一关系;在模块类设置与系统权限类的一对多关系,与父模块类的多对一关系;
步骤三:开发一个前台页面,可读出所有的模块的树状结构信息,并可在相应的模块下添加子模块的名称、路径与层级及相关的增删改查权限等;
步骤四:分配这些角色与权限给用户,当用户登陆系统时,加载其相关的角色与权限,并存储到Swing里的Application容器里;
步骤五:控制权限模块判断用户的权限集合是否包含模块里的路径,如果返回true,说明有权限,反之则没权限。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611168283.6A CN106778306A (zh) | 2016-12-16 | 2016-12-16 | 一种基于JavaEJB框架的权限设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611168283.6A CN106778306A (zh) | 2016-12-16 | 2016-12-16 | 一种基于JavaEJB框架的权限设计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106778306A true CN106778306A (zh) | 2017-05-31 |
Family
ID=58892197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611168283.6A Pending CN106778306A (zh) | 2016-12-16 | 2016-12-16 | 一种基于JavaEJB框架的权限设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106778306A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107886253A (zh) * | 2017-11-30 | 2018-04-06 | 北京恒华伟业科技股份有限公司 | 一种基于组织机构管理的权限控制方法及装置 |
CN108875391A (zh) * | 2017-06-08 | 2018-11-23 | 成都牵牛草信息技术有限公司 | 系统中员工登录其账户后的权限显示方法 |
CN111027091A (zh) * | 2019-11-13 | 2020-04-17 | 北京字节跳动网络技术有限公司 | 一种管理权限的方法、装置、介质和电子设备 |
CN113392423A (zh) * | 2021-08-17 | 2021-09-14 | 深圳市信润富联数字科技有限公司 | 用户权限管理方法、系统及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567675A (zh) * | 2012-02-15 | 2012-07-11 | 合一网络技术(北京)有限公司 | 一种业务系统下的用户权限管理方法和系统 |
CN103632082A (zh) * | 2013-12-10 | 2014-03-12 | 惠州华阳通用电子有限公司 | 一种通用权限管理系统及方法 |
CN105656929A (zh) * | 2016-02-25 | 2016-06-08 | 山东中创软件工程股份有限公司 | 一种服务调用方法、装置及系统 |
-
2016
- 2016-12-16 CN CN201611168283.6A patent/CN106778306A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567675A (zh) * | 2012-02-15 | 2012-07-11 | 合一网络技术(北京)有限公司 | 一种业务系统下的用户权限管理方法和系统 |
CN103632082A (zh) * | 2013-12-10 | 2014-03-12 | 惠州华阳通用电子有限公司 | 一种通用权限管理系统及方法 |
CN105656929A (zh) * | 2016-02-25 | 2016-06-08 | 山东中创软件工程股份有限公司 | 一种服务调用方法、装置及系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108875391A (zh) * | 2017-06-08 | 2018-11-23 | 成都牵牛草信息技术有限公司 | 系统中员工登录其账户后的权限显示方法 |
CN108875391B (zh) * | 2017-06-08 | 2021-04-06 | 成都牵牛草信息技术有限公司 | 系统中员工登录其账户后的权限显示方法 |
CN107886253A (zh) * | 2017-11-30 | 2018-04-06 | 北京恒华伟业科技股份有限公司 | 一种基于组织机构管理的权限控制方法及装置 |
CN111027091A (zh) * | 2019-11-13 | 2020-04-17 | 北京字节跳动网络技术有限公司 | 一种管理权限的方法、装置、介质和电子设备 |
CN111027091B (zh) * | 2019-11-13 | 2022-04-22 | 北京字节跳动网络技术有限公司 | 一种管理权限的方法、装置、介质和电子设备 |
CN113392423A (zh) * | 2021-08-17 | 2021-09-14 | 深圳市信润富联数字科技有限公司 | 用户权限管理方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106778306A (zh) | 一种基于JavaEJB框架的权限设计方法 | |
US20170111365A1 (en) | Operating-system-level isolation of multi-tenant applications | |
CN101673358B (zh) | 基于权限组件对工作流组件中的权限管理的方法及装置 | |
AU2014208184A1 (en) | Systems and methodologies for managing document access permissions | |
CN104408339A (zh) | 一种信息系统中权限管理方法 | |
CN103064738A (zh) | Linux下本地应用程序窗体嵌入浏览器的方法及系统 | |
CN105550590A (zh) | 基于角色的权限控制机制 | |
WO2016026320A1 (zh) | 访问控制方法及装置 | |
CN105046165A (zh) | 一种网络项目平台层级权限控制的方法 | |
CN1773413A (zh) | 角色定权方法 | |
CN102904877A (zh) | 一种基于云存储的二进制序列化角色权限管理方法 | |
CN104143122A (zh) | 一种智能业务审批方案 | |
CN104217146A (zh) | 一种基于abac和rbac的权限控制方法 | |
CN105404799A (zh) | 信息系统中的权限管理装置 | |
CN104717206A (zh) | 一种物联网资源访问权限控制方法及系统 | |
CN109815714A (zh) | 权限管控方法、装置及计算机可读存储介质 | |
CN105243337A (zh) | 权限控制系统及方法 | |
CN108268782A (zh) | 基于角色权限控制的会议机制 | |
CN104166581A (zh) | 一种面向增量制造设备的虚拟化方法 | |
CN103136620A (zh) | 工程管理系统系统权限授权实现方法 | |
Yao et al. | Access control requirements for structured document in cloud computing | |
Mutti et al. | Policy specialization to support domain isolation | |
CN101141297A (zh) | 一种权限关系数据的生成和调整方法及管理系统 | |
CN112528248A (zh) | 面向多应用的用户权限管理方案 | |
CN109150590A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170531 |
|
RJ01 | Rejection of invention patent application after publication |