基于角色和颗粒操作的自定义通用权限管理模型研究

基于角色和颗粒操作的自定义通用权限管理模型研究

ID:31360027

大小:108.50 KB

页数:6页

时间:2019-01-09

基于角色和颗粒操作的自定义通用权限管理模型研究_第1页
基于角色和颗粒操作的自定义通用权限管理模型研究_第2页
基于角色和颗粒操作的自定义通用权限管理模型研究_第3页
基于角色和颗粒操作的自定义通用权限管理模型研究_第4页
基于角色和颗粒操作的自定义通用权限管理模型研究_第5页
资源描述:

《基于角色和颗粒操作的自定义通用权限管理模型研究》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于角色和颗粒操作的自定义通用权限管理模型研究  摘要:权限管理系统是软件系统的核心部分,涉及到数据的安全和保密性。针对传统基于角色的访问控制RBAC(Role-BasedAccessControl)模型中角色管理不灵活、与其它系统耦合性高且通用性低的缺点,提出一种基于角色和颗粒操作RPO(Role-Particle-Operation)的自定义通用权限管理模型。该模型耦合性低,角色和颗粒操作完全可以由用户自定义,支持无限级权限,并独立于其它软件系统,具有高通用性,可以为几乎所有软件系统提供权限管理接口。  关键词:权限管理;RPO;无限级权限;高通用性  DOIDOI:10.119

2、07/rjdk.162122  中图分类号:TP301  文献标识码:A文章编号:1672-7800(2016)012-0014-02  0引言  随着软件系统功能越来越多、规模越来越大以及模块化要求越来越高,管理信息系统对各类信息资源的访问与控制以及对各类用户群体的管理也越来越复杂。因此最初基于用户的权限管理被基于角色的访问控制RBAC(Role-BasedAccess6Control)模型所替代,用角色代替用户是此模型的一大创新,减少了管理员在大量用户系统中要为每个用户分配权限的繁冗操作[1],但是此模型的缺陷是对角色权限的划分比较模糊和僵化,粒度较粗。最为重要的是,当系统升级或

3、者权限发生改变时,仍然需要修改系统的源代码,这与“高内聚低耦合”的软件设计理念相矛盾,会给软件升级和软件维护带来巨大的额外开销。因此提出一个通用的、可以为几乎所有软件系统提供权限管理接口的模型尤为必要[2]。  1通用权限管理模型总体思路  1.1传统模型的缺陷  权限管理的实质是系统根据用户U的权限来限定其能访问的资源R和进行的操作O,这里的U、R和O均为集合,其中U={u1,u2…ui},R={r1,r2…rj},O={o1,o2…ok},权限集合P可以定义为P=O*R,P中有j*k个元素,那么系统中可能出现的权限子集的最大数为2*j*k,包括空集(无任何权限)和P本身(具有所有

4、权限)[3]。如果U集合中有i个用户,那么在基于用户的访问控制模型中,系统开发者要为i个用户设计和分配权限的最大工作量为W=2*i*j*k,这是一个艰巨的任务。最关键的是,在实际的用户访问控制中,i,j,k经常发生变化,系统开发者需要修改代码,给后期维护带来不便[4]。  RBAC是基于用户权限控制模型的升级版,在RBAC中,多个具有相同权限的用户被归并为同一个角色,这样由用户集合U延伸出角色集合R′,R′={r′1,r′2…r′m}[5],m≤i,改进之后的工作量虽然有所减轻,但是因为权限的定义固化在程序里,所以仍不能从根本上解决问题。  1.2RPO模型的特点6  如果要从根本上

5、解决问题,则需要将权限设置交给客户,将权限管理模块从软件系统中剥离出来[6]。但是一个成熟的系统在使用上不能包含太多技术细节,所以这种设计的难点在于如何将以前只能由代码完成的复杂功能变成可以由鼠标点击完成的图形界面操作[7]。RPO模型即为完成这种转换设计的新型模型。  在RPO中,要想实现自定义权限的通用管理,必须首先将角色、资源和操作完全独立,并且充分颗粒化[8],然后设定R′对O与R笛卡尔积的访问控制即可实现RPO模型,如图1所示。  RPO模型中,R′、O和R均为用户自定义,不由系统开发者设计,这样才符合“自定义”的要求;但要做到“通用”,必须使O和R充分地颗粒化,即不可再细

6、分[9]。  2RPO设计  2.1角色集合R′的定义  3个集合中,R′的定义最简单,因为客户对业务逻辑中的角色最清晰[10]。角色的定义如表1所示。  2.2操作集合O的定义  操作即为用户在系统中可以执行的动作,在RPO中,操作必须是不可再分[11]或者是在本系统中不可再分的颗粒,比如“物理教师编辑学生成绩”中的动词“编辑”则不满足要求,因为“编辑”还可以细分为增加、修改和删除。所以O在定义上较R′要复杂一些[12]。操作集合O的定义如表2所示。  2.3资源集合R的定义  相对于R′和O,R的定义最为复杂,因为R′6和O中的元素彼此之间没有关系,且都是颗粒性质不可细分的,用表

7、1和表2中的二维表即可定义[13]。而R中的资源可能有多层包含关系,例如年级包含班级,班级包含学生,所以用二维表定义可读性差、维护困难[14]。本模型中设计的定义方式是目录树。在目录树中,所有资源,无论是集合还是元素都被定义为目录,这里充分应用了软件中抽象的思想[15]。目录的可多层包含性实现了权限的无限极特性,为本模型提供了良好的实用性和灵活性[16]。  3RPO通用权限管理模型调用  本模型总共包括5个功能模块:用户管理、角色管理、目录管理、颗粒操作

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。