权限管理设计

上传人:枫** 文档编号:486372681 上传时间:2022-11-07 格式:DOCX 页数:24 大小:103.81KB
返回 下载 相关 举报
权限管理设计_第1页
第1页 / 共24页
权限管理设计_第2页
第2页 / 共24页
权限管理设计_第3页
第3页 / 共24页
权限管理设计_第4页
第4页 / 共24页
权限管理设计_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《权限管理设计》由会员分享,可在线阅读,更多相关《权限管理设计(24页珍藏版)》请在金锄头文库上搜索。

1、权限管理设计对 EMS 权限管理模块设计1. 权限设计概述1.1 引言随着Web服务的复杂度增加以及用户数量和 种类的增多,安全问题在理论及工程上都是一个 必须考虑的问题,而权限管理是安全问题中一个 很重要的方面。因此本文针对权限做了一个分 析。权限可简单表述为这样的逻辑表达式:判断 “Who对What (Which)进行How的操作”的逻辑 表达式是否为真。1.2 意义用户管理及权限管理一直是应用系统中不可缺少的一个部分系统用户很多,系统功能也很多不同用户对系统功能的需求不同出于安全等考虑,关键的、重要的系统功能需限制部分用户的使用出于方便性考虑,系统功能需要根据不同的 用户而定制1.3目标

2、直观,因为系统最终会由最终用户来维护,权 限分配的直观和容易理解,显得比较重要,除了 功能的必须,更主要的就是因为它足够直观。简单,包括概念数量上的简单和意义上的简单 还有功能上的简单。想用一个权限系统解决所有 的权限问题是不现实的。设计中将变化的“定制” 特点比较强的部分判断为业务逻辑,而将相同的 “通用”特点比较强的部分判断为权限逻辑就是 基于这样的思路。扩展,采用可继承的方式解决了权限在扩展上 的困难。引进Group概念在支持权限以组方式 定义的同时有效避免了权限的重复定义。2. 基于角色的权限管理设计(Role-Based AccessControl ,RBAC)2.1权限管理用例图用

3、户爸瑞!疥统怕映苜琛增创换迫样作息.図子机限细删战总用户信 息,筍配H1色c它按典爸”魁皱營理员乘址禺块昔珂用户管理其它按纵管珊对普翔用户 避行菅埋普诫管理员助能爲2.2 用例图描述超级管理员:系统中默认的角色,它是系统中 拥有最高权限的角色,它不仅能够管理其他的管 理员和用户,而且还可以对系统中每个模块的任 一功能进行操作、维护。Ill普通管理员:它是由超级管理员创建的,并授 予权限,它能够管理系统中大部分的功能,它可 以查看所有普通管理员、普通用户的信息,它只 能对由它自己创建的用户进行编辑、删除操作, 和管理拥有权限的模块。普通用户:它是系统中最低权限的角色,它只 能对自己拥有的权限进行

4、操作,一般情况下,它 的权限是对信息的浏览和对自己信息的录入,修 改。登陆系统:根据用户拥有的权限不同,用户所 能操作的功能多少就不同,所以在登陆系统的时 候就要对用户的权限进行判断。用户管理:这里对本系统的登录用户进行维 护。包括,新建、删除、编辑、注销等;系统初 始化的时候,用户管理中默认只有一个拥有超级 管理员角色的用户,因此在初始化登陆的时候, 只能用这个用户登陆,其他的用户由这个用户创角色管理:角色是赋予系统用户的职权名称。包括,新建、删除、编辑、注销等;系统初始化的时候,角色管理中默认只拥有一个超级管理员 的角色,其他角色由拥有这个角色的用户创建并 授权。其他模块:其他模块的每个功

5、能都拥有一个唯 一 Id,根据用户登陆的权限,再确定这些功能 是否对用户开放。3. 权限设计思路3.1 基于角色的访问控制 RBACRBAC的主要思想是:权限(Permissions)是 和角色(Roles)相联系的,而用户(Users)则 被指定到相应的角色作为其成员。这样就使权限 的管理大大简化了。系统的权限控制主要是采用基于角色的访问 控制,把权限绑定到角色上,当用户要操作权限 时,就把角色赋给用户。而且在需要撤回权限时, 只需把角色上的权限撤回就行了。3.2 思路为了设计一套具有较强可扩展性的权限管理, 需要建立用户、角色和权限等数据库表,并且建 立之间的关系,具体实现如下3.3 用户

6、用户仅仅是纯粹的用户,用来记录用户相关信 息,如用户名、密码等,权限是被分离出去了的。用户(User)要拥有对某种资源的权限,必须 通过角色(Role)去关联。用户通常具有以下属 性:编号,在系统中唯一。 名称,在系统中唯一 用户口令。注释,描述用户或角色的信息。3.4 角色角色是使用权限的基本单位,拥有一定数量的 权限,通过角色赋予用户权限,通常具有以下属 性:编号,在系统中唯一。名称,在系统中唯一9(监控人员) 注释,描述角色信息.-9(在线监控人员)3.5 权限权限指用户根据角色获得对程序某些功能的操作,例如对文件的读、写、修改和删除功能, 通常具有以下属性:编号,在系统中唯一。名称,在

7、系统中唯一 (添删,改,查)注释,描述权限信息 .9允许增加监控对3.6 用户与角色的关系一个用户(User)对应一个角色(Role), 一个角色可以被多个用户使用,用户角色就是用 来描述他们之间隶属关系的对象。用户(User) 通过角色(Role)关联所拥有对某种资源的权限, 例如用户(User):UserID UserName UserPwd1 张三xxxxxx2 李四xxxxxx角色(Role):RolelD(角色编号)RoleName (角色名称)RoleNote (角色注释)01系统管理员监控系统维护管理员02监控人员在线监控人员03 调度人员 调度工作人员04 一般工作人员工作人员

8、用户角色( User_Role):UserRoleID UserID RoleIDUserRoleNote( 用户角色注释)1 1 02用户“张三”被分配到角色“监控人员”2 2 02用户“李四”被分配到角色“监控人员”从该关系表可以看出,用户所拥有的特定资 源可以通过用户角色来关联。3.7 权限与角色的关系一个角色(Role)可以拥有多个权限(Permission),同样一个权限可分配给多个 角色。例如:角色( Role):RoleUUlD(角色 UUID)RoleName(角色名称)RoleRemark(角色注释)01系统管理员监控系统维护管理员02监控人员在线监控人员03调度人员调度工作

9、人员04 一般工作人员工作人员权限( Privilege):PrivilegeUUlD(权限称)00010002控PrivilegeRemark(权限注释)UUID) PrivilegeName(权限名=10003删除监控0004允许删除监控对象察看监控信息修改监允许修改监控对象允许察看监控对象空角色权限(Role_ Privilege ):RolePermissionID RoleUUID PrivilegeUUlD Role_PrivilegeRemark(角1 01 0001角色“系统管理员”具有权限“增加监控”2 01 0002角色“系统管理员”具有权限“修改监控”3 01 0003角

10、色“系统管理员”具有权限“删除监控”4 01 0004 角色“系统管理员”具有权限“察看监控”5 020001角色“监控人员”具有权限“增加监控”6 020004角色“监控人员”具有权限“察看监控”由以上例子中的角色权限关系可以看出,角 色权限可以建立角色和权限之间的对应关系。3.8 建立用户权限用户权限系统的核心由以下三部分构成:创造 权限、分配权限和使用权限。第一步由Creator创造权限(Permission), Creator 在设计和实现系统时会划分,指定系统 模块具有哪些权限。第二步由系统管理员(Administrator)创建 用户和角色,并且指定用户角色(User-Role)

11、和角色权限(RolePermission)的关联关系。第三步用户(User)登陆系统,对自己拥有 的权限进行管理、使用。4.权限的具体实现模式模式一:用户-角色-权限(最通用的方法)4.1数据库结构4.1.1用户表:表名:user_control_tab含义:用户表字段字段字段是否是是否为字段字段名称类型长度关键字空含义说明idbigint8是否编号主键,自增uuidbinary16否UUID唯一role uuidbinary16否角色UUID对应角色表的UUIDuser namevarchar16否用户名只能是数字,字母,下划线组成user pwdvarchar16否密码密码的长度在6-16

12、个字符之间real namevarchar6否真实姓名要求填写用户真实姓名sexint2否性别0:男1:女phonebigint11否移动电话用户的手机号码emailvarchar100否邮箱用户的邮箱remarkvarchar100是备注4.1.2角色表:表名:role_tab含义:角色表字段 名称字段 类型字段 长度是否是 关键字是否为 空字段 含义字段 说明idbigint8是否编号主键,自增uuidbinary16否UUID唯一role namevarchar16否角色名称只能是数字,字母,下划线组成remarkvarchar100备注4.1.3权限表:表名:privilege_tab

13、含义:权限表字段 名称字段 类型字段 长度是否是 关键字是否 为空字段 含义字段 说明idbigint8是否编号主键,自增uuidbinary16否UUID唯一pri namevarchar16否权限名称只能是数字,字母,下划线组成ext idvarchar100否功能id页面功能的id,唯remarkvarchar100备注4.1.4 角色权限表:表名:role_privilege_tab含义:角色权限表表字段 名称字段 类型字段 长度是否是 关键字是否 为空字段 含义字段 说明idbigint8是否编号主键,自增role uuidbinary16否角色UUID引用角色表的UUID,唯一pri uuidbinary16否权限UUID引用权限表的UUID,唯remarkvarchar100备注4.2在控制层写if/else判断条件用户登入系统后,就通过其角色加载所有可以 访问的页面,保存到 Session, 一直到用户退出 系统或者 session 过期。用户访问页面时,添 加一个 Dispatcher ( tapestry5 方式),在这 个Dispatcher中解析出页面地址如/cs/depos it ,和用户保存在 Session 里的可访问页面作 比较,如果存在则继续,不存在则跳到登入页面。模式二:Ralasafe第三方组件(图形界面的形

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号