基于差异的多级角色授权模型研究及实现_第1页
基于差异的多级角色授权模型研究及实现_第2页
基于差异的多级角色授权模型研究及实现_第3页
基于差异的多级角色授权模型研究及实现_第4页
基于差异的多级角色授权模型研究及实现_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于差异的多级角色授权模型研究及实现上海理工大学第30卷第5期J.UniversityofShanghaiforScienceandTechnologyVo1.30No.52008文章编号:10076735(2008)05047005基于差异的多级角色授权模型研究及实现王瑞琴,陈玮(上海理工大学计算机与电气工程学院,上海200093)摘要:基于角色与访问控制()模型,提出了一种安全有效的多级角色授权(E)模型.ERBAC模型将单级角色扩展为多级角色,通过定义差异性权限,并引入优先权限分配机制,从而达到对普通权限的多级授权和对特殊权限的灵活控制.同时对模型实现给出了必要的缓存机制和加强缓存安全性的解决方法.模型在开发的统一认证授权系统中得到应用.关键词:授权管理;差异性权限;基于角色的访问控制模型;多级角色;数据库安全中图分类号:TP301文献标识码:AResearchandapplicationofadifferencebasedmodelformulti?-hierarchyrole?-basedauthorizationWANGRui?qin,CHENWei(CollegeofComputerandEltmcalEngineering,UniversityofShanghaiforScienceandTechnology,Shanghai200093,China)Abstract:AsecureandeffectiveERBAC(extendedrolebasedaecesscontro1)modelforpermissionauthorizationbasedonRBAC(rolebasedaccesscontro1)modelispresented.TheERBACmodelusesmultihierarchyroles,definesdifferentialpermissionsandintroducesanadditionalallocationprocessofpriorypermitstoRBAC.Besides,ne.eSsarycachestructureandrelatedsecuritymethodareprovided.Keywords:permissionauthorization;differentialpermission;rolebasedaccesscontrolmodel;multihierarchyroles;databasesecurity随着计算机技术,互联网技术的发展,大型网络和数据库管理系统面临着日益复杂的数据资源安全管理这一难题.20世纪90年代,角色的概念逐渐形成,产生了基于角色的访问控制模型(RBAC)l1,2J.它比传统的自主访问控制和强制访问控制更优越,有着更高的灵活性和扩展性,但是,目前的RBAC模型在理论上和应用中仍存在着诸多问题l3J.RBAC模型引入了角色作为中介,将权限同角色关联起来,而用户的授权则通过赋予相应的角色收稿日期:20070327作者简介:王瑞琴(1982一),女,硕士研究生来完成,用户的访问权限就由该用户拥有的所有角色的权限集合并集决定.由于模型采用的方法与现实世界中的情况一致,因而用户与权限的逻辑分离大大方便了权限的管理.但是,当存在权限有交叉时,如何依据变化的用户职责灵活地实现授权管理,并有效地对系统角色及权限进行管理仍是RBAC模型尚未完全解决的问题_4J.本文在RBAC基本模型的基础上,提出了一个基于差异的ERBAC模型,研究差异性权限分配策第5期王瑞琴,等:基于差异的多级角色授权模型研究及实现471略,在此基础上将授权人分层,给出多级授权策略,并针对模型的应用,给出了一个权限缓存机制以提高系统运行性能和安全性.1RBAC基本模型90年代初美国国家标准与技术学院的Ferraiolo等人1第一次提出了RBAC的概念和术语,此后,Sandhu等人【,提出了比较成熟的RBAC96模型.因为RBAC模型具有显着的优点,从而引起国内外研究者的广泛关注,在基本的RBAC模型基础上提出了很多种扩展模型,当今基于角色的访问控制已经成为访问控制方法的主流.为了论述的方便,现对RBAC基本模型作简单介绍.用S表示一个用户集合,用S表示一个权限集合,用S,表示一个角色集合.通过为用户分配权限(uA)和将权限分配给角色(PA)完成授权过程.用户指派A,ASS,.(,r)A,表示用户拥有角色r,从语义上来说就表示拥有r所具有的权限.权限指派A打,ASpS,.(P,r)A表示权限P被赋予角色r,从语义上来说就表示拥有r的用户拥有P.用表示一个会话集合,用S表示一个限制集合.模型主要元素的定义见文献5,6.若用S(r)表示角色r对应的权限集,S()表示用户对应的最终权限集,S,()表示用户U对应的角色集,得出以下定理.定理1rl2=>S(r2)Sp(1).定理2Sp()=Sp(r1),Sp(r2),S(r”)=P1,2,P.即用户的最终权限是分配给该用户的所有角色所对应的权限集合.RBAC的基本授权模型如图1所示,包含最基本的RBAC元素:用户,角色,权限和会话,并可以用一个七元组<Su,A,Sr,A,S,5c>来表示.2提出基于差异的ERBAC授权模型国内使用RBAC模型遇到权限有交叉时,处理方法通常有3种情况3:情况(a)当用户工作责任变动很大,比如平级调职,升职时,只需更改用户的角色.情况(b)当已经存在与用户增加的工作岗位对应的角色时,只需为该用户增加角色分配.情况(C)当用户的主要工作不变,只是增加了其他角色对应岗位的某项工作时,权限管理员要重新制定一个角色,再将该新增角色分配给该用户.图1RBAC基本授权模型Fig.1BasicauthorizationmodelforRBAC情况(a)和情况(b)的解决方法进一步优化的余地不大.小型信息系统发生情况(C)时,因用户变动不大,问题也不突出.但是,在大型网络数据库系统下,因用户众多,部分用户临时岗位职责变动频繁,如果仍然采用制定新角色的方法,就会造成系统中角色数量的迅速膨胀.授予用户角色的过程虽不需要很多的技术,但角色的大量增多就会带来严重的问题,如问题的复杂性增加,系统开销增大,容易造成角色管理混乱,这样就给系统管理员平添了很多负担.为解决这一现实中存在的突出问题,本文提出基于差异的ERBAC模型,采用差异性权限分配策略.现基于差异的ERBAC模型作说明.授权管理问题中,最初采用的自主访问控制和强制访问控制,将问题捆绑为”用户一权限”.RBAC引入了角色作为中介,将问题分解为”用户一角色”,“角色一权限”两步.与基本RBAC模型不同的是,本文采用了一种折衷的思想,在基于角色访问控制的基础上将”用户一权限”这条路径与”用户一角色一权限”路径结合起来,即结合两条路径来共同解决一个问题.运用这一思想,本文在基本RBAC授权模型基础上提出一个基于差异的EC模型.基于差异的ERBAC模型需要在基本RBAC模型基础上增加定义13,定理3和定理4.定义1差异性权限.它是权限集合中分离出来的权限,并且是某个职能角色的一项,为即将分配给用户而独立表示,记为加.即角色r与i个权限,1,P”,P间存在一对多关系rP2,P,则Pa,PaP1,P2,P.用户U的差异性权限构成的欧式空间用S()表示.定义2优先允许权限.它是差异性权限集合空间的一个基向量.一个优先允许权限可记为P,则VPy,PyS,且VPspy()(甜).其472上海理工大学2008年第3O卷中,用户”的优先允许权限构成的欧式空间用()表示.定义3优先拒绝权限.它是差异性权限集合空间的另一个基向量,区别于优先允许权限而定义.一个优先拒绝权限可记为p,则VP,pS,且VS()Sp().其中用户的优先拒绝权限构成的欧式空间用S()表示.由定义13易得出定理3.定理3s()=Sy()sp(“).即空间S(“)是空间sp()与空间Sp()的直和.定理4s()=+S()f一Sp()nSp(r1),Sp(,.2),Sp(r”)=S(“),Sp(r1),S(2),s()一sp()=1,2,p,现举例说明以上定义和定理以及用户优先(允许/手巨绝)权限分配策略.如图2所示,用户”的初始角色是r.,初始权限集合包含P2,.在用户增加了权限1对应的工作职责时,区别1为优先允许权限户然后为用户分配优先允许权限y1,建立用户】与权限1的用户权限对应关系(】,1),同时保留用户U1拥有的角色r对应的权限.经过此优先权限分配环节,用户的权限集包含】,2,从授权过程可以看出用户的角色集没有发生变化,应用系统的角色没有增加,角色权限间的对应关系没有改变,并且满足了用户最终权限的变更,在不增加系统问题复杂度的同时保持了原有的等级权限结构,方便了授权管理.图2ERBAC模型Fig.2ExtendedRBACauthorizationmodelERBACmodel在为用户进行差异性权限分配时,首先要考虑的是区分出用户的优先允许绝权限,这一过程本身是针对情况(C)而来,比较容易.存在变更的权限即为差异性权限,可根据实际职责区别为优先拥有/拒绝权限.用户的优先权限由权限授权人完成,在确定权限授权人的问题上本文采用了多级授权策略.3多级授权策略为使角色层次架构能够模拟现实世界的职权层次以简化用户的角色分配和管理,构建与系统的LDAP(轻量级目录访问协议)组织架构一致的角色层次关系,这可以用图3中的组织架构与角色架构的对应关系清晰地表明.LDAPp的组织架构角色层次架构授权人层次:综合科信息中心应用推进科,叵gP1政务授权系统l东练咎l戽J一一J一随一J理I应用推进科lI综合科ll信息中心/l田曲始科员1l图3ERBAC的多级授权策略Fig.3AmaltilovelauthorizationpolicyforERBACERBAC只有一个系统管理员,系统管理员为每个部门设一个部门管理员并负责分配各部门管理员的权限.部门内用户的权限由部门级管理员负责分配,大大降低了系统管理员的工作量.各级之间,下级授权人向上级授权人申请可以指派的角色权限范围,上级授权人负责为下级授权人进行角色权限分配.上级能够控制下级的授权范围,系统管理员能够监控部门管理员的授权范围,提高了授权安全性.第5期王瑞琴,等:基于差异的多级角色授权模型研究及实现4734模型应用的权限缓存机制在实际的访问控制系统中,用户和权限数量比较大,角色数量不多但存在复杂的角色继承关系.在判断某指定用户是否拥有某特定权限时,必定需要一个多层的递归查找过程,占用系统大量资源,影响系统性能.如果建立一个用户一权限缓存表一chetable(“,),记录用户的最终权限集合,并在用户的角色和权限有变化时清除该用户的所有缓存记录更新缓存表Cachetable,那么用户一权限对应关系的查找就可以利用完成第一次递归查找过程在缓存表Cachetable内建立的信息进而以查表计算代替多次重复类似的递归计算.这与计算机的设计思想正好吻合,可以大大提高系统的性能.在ERBAC模型中,用户的最终权限可以依据定理4得到.考虑系统资源的访问安全时效性.如果用户一权限对应关系一旦建立不再失效,那么在检查用户一权限对应关系时因系统会首先读取缓存表一chetable,故缓存表的安全性和时效性是系统安全的另一个焦点所在.Cachetable中没有有效期限定的缓存记录一经篡改,系统的安全性防线将完全崩溃.为解决这一问题,本文在缓存表Cachetable中为每条(用户,权限)记录增加一个时间戳,以设定过期时间,即一条缓存记录用元组(用户,权限,过期时间)表示,记为Cachetable(,t).同时f3B定义4缓存有效过期时间t.当且仅当DateTime.NowExpTim%tDateTime.Now+ExpTimenx缓存有效过期时间的引人,可以在一定程度上解决缓存数据的安全性,其安全强度是关于ExpTim%的线性函数.Safe(Cache)=f(ExpTim%).在使用缓存有效过期时间后,系统建立递归查找缓存的计算频度增加,在一定程度上制约了系统的计算性能.但是,只要根据实际情况,权衡性能与安全的重要性,为ExpTim%x取值合适,就能在计算性能与安全性之间找到一个平衡点.5模型实现5.1主要模块根据本文提出的ERBAC模型,作者为某政府部门实现了一个统一认证授权系统.在该系统中,权限管理与授权是模型实现的核心部分.授权管理模块主要划分为4个子模块来实现,分别是为用户组织分配角色子模块,分配角色到用户组织子模块,用户优先权限管理子模块(图4)和用户最终权限状态展现子模块(图5).5.2ERBAC模型与基本RBAC模型的实现对比为体现本文提出的ERBAC模型在解决类似前文情况(c)的问题时表现出的有效性,灵活性以及对问题的简化程度,现用一个业务应用实例来说明.皇录用P的优先允许投限3统一认证授投中心日用户首理显i凋的忧削E地投限6用户基车信息管理据存恍先尤许捏分配昌;日?组织管理由;应用车抗管理日卫疆,口担限角色i回董看杈限角色;回分配角色r口分配优先权限i一囝匿固蕾墨蕊:?睁杈限定义?哆角色定义j-睁为用户组织丹配罱色,哆分配角色l哥固蓝醢强哆胃P首理“量示轵甩l觇目电组L口管理日雌盛雨车绝管理日婚担管理缩拉投鼠角色v甜丹配角色丹配优先权限一v查看用户权I民量鳋状志?哆鼾邑定义彤尚用户组许百角色哆丹配角色引用P置且屯用户优先梗艘首理.哆帛PI最蝗革车境强置口硼aFig.5Theusersrullpermissionsshowmodule用户甲是部门信息中心(科室)的新闻发布权过程复杂化的问题,本文在RBAC基本模型的基管理员,”新闻发布管理员角色”是系统中已经定义础上,运用折衷思想,引入差异性权限的定义,增加的角色.该角色具有新闻浏览,撰写,修改和删除权一个用户优先允许催绝权限分配过程,形成了一个限.信息中心聘非正式公务人员乙临时协助甲做新基于差异的扩展RBAC模型,并说明了模型实现的闻发布管理工作,但用户乙仅有浏览,撰写,修改新多级授权策略,进一步从系统计算性能和安全性两闻权限,没有删除新闻权限.在解决这一问题时,基方面考虑给出一个更为安全的权限缓存机制.本文本RBAC模型采用的方法通常是:增加一个新闻发提出的ERBAC模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论