对EMS权限管理模块设计1
权限设计概述1
1引言随着Web服务的复杂度增加以及用户数量和种类的增多,安全问题在理论及工程上都是一个必须考虑的问题,而权限管理是安全问题中一个很重要的方面
因此本文针对权限做了一个分析
权限可简单表述为这样的逻辑表达式:判断“Who对What(Which)进行How的操作”的逻辑表达式是否为真
2意义❖用户管理及权限管理一直是应用系统中不可缺少的一个部分❖系统用户很多,系统功能也很多❖不同用户对系统功能的需求不同❖出于安全等考虑,关键的、重要的系统功能需限制部分用户的使用❖出于方便性考虑,系统功能需要根据不同的用户而定制1
3目标直观,因为系统最终会由最终用户来维护,权限分配的直观和容易理解,显得比较重要,除了功能的必须,更主要的就是因为它足够直观
简单,包括概念数量上的简单和意义上的简单还有功能上的简单
想用一个权限系统解决所有的权限问题是不现实的
设计中将变化的''定制”特点比较强的部分判断为业务逻辑,而将相同的“通用”特点比较强的部分判断为权限逻辑就是基于这样的思路
扩展,采用可继承的方式解决了权限在扩展上的困难
引进Group概念在支持权限以组方式定义的同时有效避免了权限的重复定义
基于角色的权限管理设计(Role-BasedAccessControl,RBAC)2
1权限管理用例图垂址捺纵管用户管登陆系对普通用户进行谡普谴管理2
2用例图描述超级管理员:系统中默认的角色,它是系统中拥有最高权限的角色,它不仅能够管理其他的管理员和用户,而且还可以对系统中每个模块的任一功能进行操作、维护
普通管理员:它是由超级管理员创建的,并授予权限,它能够管理系统部分的功能,它可以查看所有普通管理员、普通用户的信息,它只能对由它自己创建的用户进行编辑、删除操作,和管理拥有权限的模块
普通用户:它是系统中最低权限的角色,它只