APP下载

复杂时空约束条件下基于角色的转授权模型研究

2013-03-20王延章

大连理工大学学报 2013年3期
关键词:时限约束条件时空

彭 友,鞠 航,王延章

(1.大连理工大学 信息技术与决策支持研究所,辽宁 大连 116024;2.哈尔滨工程大学 经济管理学院,黑龙江 哈尔滨 150001)

0 引 言

基于角色的访问控制(role-based access control,RBAC)模型的出现,一方面改善了传统访问控制模型的任意性和强制性,另一方面为解决分布式环境下的访问控制问题提供了便利.转授权技术正是建立在RBAC 模型的基础上,用以解决用户间权限再分配的问题的.国外关于转授权模型的研究起步较早,主要包括Sandhu 等提出的与角色管理者相关联的ARBAC97模型[1],Barka等提出的允许通过角色实现用户-用户转授权操作的RBDM0 模型[2],Zhang等提出的通过定义基于规则的声明性语言来执行转授权操作的RDM2000模型[3],以及目前得到广泛应用的PBDM 模型.国内主要研究成果包括王小明等提出的一种支持身份认证的动态角色委托代理授权模型[4];赵庆松等提出的基于重复和部分角色的转授权模型RPRDM[5];孙波等提出的具有时限约束的TRDM 模型[6];李黎等提出的一种基于代理的角色代理模型ARDM[7];张少敏等提出的具有时间约束的基于角色的授权管理模型[8].

通过对大量信息系统的开发和实施过程进行深入分析,可以发现在转授权处理过程中会存在如下约束情况:(1)转授权过程由于对权限可控性和系统安全性等方面考虑,会被限制在一个特定的有效时限内,因此具有很强的时限约束特征;(2)转授权过程具有一定的突发性和不可控性,但是一个安全的信息系统资源的使用是有其上限阈值的,超过了资源上限的转授权操作是被禁止的,因此具有很强的资源约束特征;(3)转授权过程中会产生多种类型的互斥事件,针对互斥事件在同一时刻发生的情况,本文称其为互斥约束.例如,事件E1:deassignrtou2(系统撤销用户u2的角色r)和事件E2:u2delegatertou3(用户u2将角色r授权给用户u3)同时发生时系统应该如何处理的情况即为互斥约束.国内外一些学者也考虑到了时限约束问题,如文献[6]和[8],但是,对于资源约束和互斥约束的情况,则没有过多的关注.作者在实际系统的开发和实施中发现,这3种约束是相互影响且不可分割的,单方面考虑时限约束情况不能解决转授权业务中所遇到的种种问题.因此本文综合考虑复杂时空约束条件对转授权处理流程的影响,并给出在复杂时空约束条件下基于角色的转授权模型的处理机制和详细算法流程.本文的研究工作虽然是从转授权过程出发的,但是系统中的一般授权过程同样会受到上述约束的影响,跳出一般授权而单独讨论转授权过程是毫无意义的,因此同样会涉及复杂时空约束对一般授权过程的影响.

1 复杂时空约束特征分析及处理流程

1.1 时限约束特征分析

时限约束是授权过程需要面对的首要问题,可以看出其会发生在系统中涉及授权的各个环节,即会体现在用户-角色-权限三者之间的授权、转授权过程中,也会对资源约束、互斥约束产生影响.所有的指派和授权在时限有效的范围内生效,但是一旦超过时限范围,系统必须自动撤销相应的指派和授权行为.在实际系统中,时限约束通常表现为一定的时间区间或者一个固定的时间周期,比如某工作人员甲的岗位授权时间为{[8:00-17:00],(周一,周二,周三,周四,周五)},这里时限约束表现为一个固定的时间周期.而如果甲某在时间区间{[10:00-11:00],2010/10/16}被转授权得到乙某的部分权限,则此时时限约束表现为一个具体的时间区间.本文首先给出时限约束的相关定义.

定义1 时间区间.T={t0,t1,…}为离散时间轴上所有时间点的无限集合,本文称离散时间轴tb开始到td结束的所有时间点的集合[tb,td]为时间区间,一般的形式化表示形式为[begin,end].

定义2 时间周期.设给定公历时间C1,C2,…,Cn,Cd,时间周期的表示形式p定义为p=其中O1=all,Oi∈2N∪{all},CiCi-1,i=2,…,n,CdCn代表时间周期的长度单位,可以是年、月、日、小时、分钟等,x∈N代表时间周期的长度.符号用来分隔左边表示时间区间和右边表示时间周期的两部分[9].

定义3 时限约束的表现形式:CONT=为时间区间,D、Dx为时间周期,时限约束是针对事件E提出的,E是授权过程中发生的任意事件.如表1所示,将时限约束条件下的事件E表示为CONST1=(CONTE,E).

1.2 时限约束下基于角色的转授权模型

基于角色的转授权模型由四元组(USR,ROL,PER,SESS)组成,各元素分别为下列基本集合:USR,用户集合;ROL,角色集合;PER,权限集合;SESS,会话集合.加入时限约束后基于角色的转授权模型基本元素如定义4所示.

表1 时限约束条件下不同事件的CONST1形式化表示Tab.1 The time-constraint expressions of CONST1 of different events

定义4

(1)UAOTUSR×ROL×CONT,在时限约束条件下的用户与初始角色之间的多对多映射关系;

(2)RLPRTROL×PER×CONT,在时限约束条件下的权限与角色之间的多对多映射关系;

(3)UADTUSR×ROL×CONT,在时限约束条件下的用户与被转授角色之间的多对多映射关系;

(4)UA=UAOT∪UADT∈USR×ROL×CONT,在时限约束条件下用户到角色的多对多指派关系;

(5)USR-O(rol,t)=((u,r′,cont)∈UAOT)∩(t∈cont)},在时刻t具有初始角色rol的所有用户的集合;

(6)USR-D(rol,t)={u(-r′≥r)((u,r′,cont)∈UADT)∩(t∈cont)},在时刻t具有被转授权角色rol的所有用户的集合;

(7)USR(rol,t)=[USR-O(rol,cont)∪USR-D(rol,cont)]∩(t∈cont),在时刻t具有同一个角色rol的所有用户的集合;

(8)USR:S→U,user(si,t)=ring),(ued,r′),cont}∈si∩(t∈cont)},在时刻t时会话si所具有的所有用户;

(9)rol:S→2R,rol(si,t)=[ua={(uing,ring),(user(si,t),r′),cont}∈UA∩(t∈cont)]},在时刻t时会话si所具有的所有角色.

1.3 资源约束特征分析及处理流程

在实际的业务系统中,转授权的发起通常是由正常因素外的某种突发因素引起的,比如某用户的缺席或者某一个紧急项目的启动,具有很强的突发性和不可预测性,这就客观造成了系统中资源使用的不可控.但是任何信息系统一个重要的安全指标就是其资源不可被滥用,也就是资源的使用不可超过其上限阈值,所有超过其上限阈值的请求是不被批准的.如何解决这种在资源约束条件下转授权的处理问题是这部分研究工作的重点.基于角色在授权过程中所具有的重要作用,本文首先引入角色状态的概念,将角色分为生效、失效、激活、忙碌4个状态.其中,失效状态是指当前角色不可用;生效状态则是当前角色可用,但是尚未有用户使用该角色;激活状态是指系统中至少有一个用户在使用当前角色;忙碌状态则是指当前角色所对应的资源达到了使用上限阈值,任何用户新的请求操作将不被批准.图1为角色状态跃迁示意图.

角色状态的跃迁是由系统中用户针对当前角色的请求事件触发的,表1中部分给出了用户针对角色的请求事件E.通过对信息系统中实际业务的分析,本文归纳出在转授权处理过程中,信息系统对资源的约束主要体现在资源的激活时间和激活次数两个方面,而对用户的约束则分为是针对所有用户还是只针对某一个具体用户两种情况.基于此本文给出了基于角色的转授权模型中各种资源约束的具体表现形式,如表2所示.

图1 角色状态跃迁示意图Fig.1 Condition transitions in the role

定义5 资源约束的形式化表示:CONSA(r) = (CONT,Ctype,Cvalue,Atype,Avalue,r).其中,CONT是时限约束,代表资源约束的有效时限;Ctype是资源约束类别,具体包括表2给出的4种不同类别;Cvalue则是指Ctype所对应的具体约束值;Atype是指约束针对的用户类型,是系统中的所有用户还是某一个具体用户u;Avalue则是Atype所对应的具体约束用户信息,缺省代表所有用户;r为被约束角色所对应的信息.

针对资源约束情况下角色和用户的相应资源信息,作者提出用户资源信息和角色资源信息两个概念.定义6和7给出了两者所包含的具体信息.

表2 基于角色的转授权模型中各种资源约束的具体表现形式Tab.2 The resource-constraint expressions in role-based delegation model

定义6 用户资源信息:u-cur(r)=(u,r,dua,nua,dm,nm,su).其 中,u为 当 前 用 户 信 息,dua是指当前用户u针对角色r的剩余可激活总时长,nua是指用户u针对角色r的剩余可激活总次数,dm是指用户u针对角色r的当前最大单次可激活时长,nm是指用户u针对角色r的当前最大可同时激活次数,su是指用户u针对角色r的所有已激活对话集合.

定义7 角色资源信息:r-cur=(r,dra,dna,drm,nrm,cs,p,uall).其中,dra是指角色r的剩余可激活时长,dna是指角色r的剩余可激活总次数,drm是指角色r的当前最大单次可激活时长,nrm是指角色r的当前最大可同时激活次数,cs是指角色r的当前状态,p是角色r的权限集,uall是指当前所有使用角色r用户的u-cur(r)集合.

1.4 互斥约束特征分析及处理流程

在实际业务系统中,转授权过程具有明显的突发性和多步性,这样会带来一个问题:多个互斥事件在同一时刻发生的情况如何处理.举例来说,系统中针对具体角色r会产生一组由不同用户发起的称之为事件序列的事件集E1,E2,…,EN,如果 存 在 两 个 事 件Ei、Ej同 时 发 生 且Ei:u1:deassignrtou2,Ej:u2:delegatertou3,这里Ei表示用户u1撤销对u2的转授权,Ej则是用户u2继续转授权给用户u3,模型执行Ei意味着用户u3不能获得转授权,而执行Ej则意味着用户u3可以获得转授权.这样互斥事件同时发生的情况在实际业务中会经常发生,而如何处理在现有的转授权模型中并没有涉及.本文这一部分就用来讨论基于角色的转授权模型中如何解决这种互斥约束的情况.

通过对转授权处理过程的研究,本文将所有可能产生互斥的事件分为两大类,称其为基本互斥事件集和上层互斥事件集.基本互斥事件集是指转授权过程中可能出现互斥情况的基本事件集,而上层互斥事件集则是指基本互斥事件之间可能会产生互斥情况的事件集合.表3给出了基于角色的转授权模型中可能产生互斥的所有事件集.需要注意到,模型中所有事件都是在时限CONTE的约束下,两个事件Ei、Ej同时发生的含义是指在其所对应的有效时限CONTE1和CONTE2内,如果在某一个时刻t重合,则Ei、Ej在时刻t发生互斥约束.

表3 基于角色的转授权模型中可能产生互斥的所有事件集Tab.3 All conflicting events in role-based delegation model

针对基于角色的转授权模型中的互斥约束情况,本文提出一种称之为“失效优先”的准则.具体来说,当两个事件Ei、Ej同时发生且属于表3中所列的互斥事件时,代表着“失效”的事件Ei优先于事件Ej的执行,也就是说,事件“disabler”优先于“enabler”,“deactiverforu”优先于“u:activer”.而事件Ej则被“阻塞”进入到“阻塞事件序列”中,当事件Ei执行时限结束以后,如果阻塞事件序列中事件Ej仍处于有效执行时限的范围之内,则继续执行之.针对多个事件产生互斥约束的情况,则属于基本互斥事件集的互斥事件优先于属于上层互斥事件集的互斥事件,也就是首先解决属于基本互斥事件集的互斥事件.由此给出互斥约束下基于角色的转授权模型的处理准则:

(1)基本互斥事件优先于上层互斥事件;

(2)“失效”事件优先于其他事件;

(3)优先事件时限失效之后执行阻塞事件序列中未失效事件.

2 复杂时空约束条件下基于角色的转授权模型中授权的撤销和业务处理的详细算法流程

2.1 复杂时空约束条件下基于角色的转授权模型中授权的撤销

与转授权过程相对应,其授权撤销过程同样非常重要.可以看出在复杂时空约束条件下,撤销的发起形式更为多样化,主要分为如下3种情况:

(1)授权时限失效导致的权限撤销.当授权时间超过了所指定的授权最大时限时,系统自动地撤销该授权行为.这里授权时限失效既包括用户-角色-权限三者之间的授权时限,同样包括转授权过程中转授权行为的有效时限.权限撤销后同时需要在角色资源信息r-cur和用户资源信息ucur(r)中进行体现.

(2)授权用户的主动撤销方式.当授权用户发现被授权用户存在权限滥用而需要撤销其权限时,就要用到主动撤销方式.这种方式存在以下两种情况:①u∈USR(r,t)→can_revoke,此时只有在时刻t具有角色r的用户才可以发起撤销,撤销过程会将被撤销用户ued及其所产生的转授权链一并撤销.权限撤销后需要更新角色资源信息r-cur和用户资源信息u-cur(r).②ux,(rx≥r)∧can_activate(ux,r,t)→can_revoke,此时在时刻t任意可以激活角色r的用户都可以发起撤销,这样处理是基于实际业务中高层用户可以对转授权过程加以监控而考虑的,撤销可以分为完全撤销和部分撤销,完全撤销是指针对角色r的所有用户的授权撤销,而部分撤销则只是针对被撤销用户ued及其所产生的转授权链的授权撤销.

(3)系统管理员发起的撤销方式.系统管理员在任何时候都可以对任何用户的授权或者转授权行为发起授权撤销.具体处理方式和上面情况类似,这里不再详细讨论.

2.2 复杂时空约束条件下基于角色的转授权模型业务处理的详细算法流程

这一部分讨论在复杂时空约束条件下基于角色的转授权模型业务处理的详细算法流程.假设系统在时刻t针对角色r会产生一组由不同用户发起的事件序列E1,E2,…,EN,本文将其称之为时刻t针对角色r的事件序列Eq(t)=(E1,E2,…,EN).在复杂时空约束条件下,事件Ei会受到自身有效时限的约束,角色r也会受到系统资源约束的限制,而事件与事件之间则可能会发生互斥约束的情况.模型首先解决互斥约束问题,根据“失效优先”准则执行事件序列Eq(t)中代表失效的de-assign和de-activate事件,由此不但会引发权限处理流程中的权限撤销操作,同样会使系统中可用资源发生变化,因此需要更新角色资源信息r-cur和用户资源信息u-cur(r).接下来则是Eq(t)中指派操作事件的执行,更新用户 -角色-权限三者之间的指派关系到时刻t,为后续的角色激活事件提供状态基础.下一步判断Eq(t)中是否存在disabler事件,如果存在则在事件有效的时限区间内,将r-cur和u-cur(r)置为初始值(r,∞,∞,∞,∞,disable,null,null)和(u,r,∞,∞,∞,∞,null),意味着当前角色r所对应的系统资源不可用,Eq(t)中其他的剩余事件被阻塞进入阻塞事件序列Bq(t),在disabler事件失效后,阻塞事件序列Bq(t)中所有事件如果也已经超过了生效时限,则执行t+1时刻的事件序列Eq(t+1),否则执行Bq(t)和Eq(t)中的后续事件,即角色生效事件enabler、角色激活事件activerforu和角色转授权事件uingdelegaterforued.相关的具体算法流程如图2所示.

3 应用案例

本文将上述研究成果应用到多个电子政务系统的开发和实施过程中以进行检验,包括“大连市西岗区内、外网综合服务门户”“辽宁省党政信息网”“大连市金州区一站式行政审批管理系统”等,均取得了良好的效果.在上述政务系统中,用户的授权、转授权操作严格遵循时限约束、系统资源约束和互斥约束三方面的制约,一方面更加符合实际业务的需要,另一方面也使系统的权限管理工作变得更加安全和可控.

图2 复杂时空约束条件下基于角色的转授权模型业务处理的详细算法流程Fig.2 The detailed algorithm flow chart of business processes of role-based delegation model under complex temporal constraints

4 结 语

信息系统出于对系统权限的可控性和资源的安全性等方面的考虑,其在转授权的具体业务处理过程中不可避免地要受到时限约束、系统资源约束和互斥事件约束三者的统一作用,这里将其统称为复杂时空约束的作用.本文正是从以上实际问题入手,一方面详细分析了复杂时空约束各自的特征和表现形式,另一方面则具体讨论了在复杂时空约束条件下基于角色的转授权模型的处理机制和详细算法流程.相应研究成果在多个电子政务系统的实际应用中均取得了良好的效果.下一步作者的主要工作将集中在转授权模型在实际业务处理过程中人为因素对信息安全带来的影响,针对操作主体-用户的鉴权、维权和责任认定将是今后研究工作的重点.

[1] Sandhu R,Bhamidipati V,Munawer Q.The ARBAC97 model for role-based administration of roles[J].ACM Transactions on Information and System Security,1999,2(1):910-922.

[2] Barka E,Sandhu R.A role-based delegation model and some extensions [C]//Proceedings of 23rd National Information Systems Security Conference.Baltimore:IEEE Computer Society,2000.

[3] ZHANG Long-hua,Ahn Gail-joon,Chu Bei-tseng.A rule-based framework for role-based delegation[J].ACM Transactions on Information and Systems Security,2003,6(3):404-420.

[4] 王小明,赵宗涛,冯德民.一种动态角色委托代理授权模型[J].计算机科学,2002,29(2):66-68.WANG Xiao-ming,ZHAO Zong-tao,FENG Demin.An RBAC dynamically delegating grant model[J].Computer Science,2002,29(2):66-68.(in Chinese)

[5] 赵庆松,孙玉芳,孙 波.RPRDM:基于重复和部分角色的转授权模型[J].计算机研究与发展,2003,40(2):221-227.ZHAO Qing-song,SUN Yu-fang,SUN Bo.RPRDM:A repeated-and-part-role-based delegation model J.Journal of Computer Research and Development,2003,40(2):221-227.(in Chinese)

[6] 孙 波,赵庆松,孙玉芳.TRDM——具有时限的基于角色的转授权模型[J].计算机研究与发展,2004,41(7):1104-1109.SUN Bo,ZHAO Qing-song,SUN Yu-fang.TRDM-temporal role-based delegation model[J].Journal of Computer Research and Development,2004,41(7):1104-1109.(in Chinese)

[7] 李 黎,王小明,张黎明.ARDM——基于代理的角色代理模型[J].计算机应用研究,2005,22(11):106-109.LI Li,WANG Xiao-ming,ZHANG Li-ming.ARDM:Agent-based role delegation model [J].Application Research of Computers,2005,22(11):106-109.(in Chinese).

[8] 张少敏,王保义,周利华.一种具有时间约束的基于角色的授权管理模型[J].武汉大学学报,2006,52(5):578-581.ZHANG Shao-min,WANG Bao-yi,ZHOU Li-hua.Temporal role-based delegation model[J].Journal of Wuhan University,2006,52(5):578-581.(in Chinese)

[9] Joshi J B D,Ghafoor A,Aref W,etal.Digital government security infrastructure design challenges[J].IEEE Computer,2001,34(2):66-72.

[10] Joshi J B D,Aref W G,Ghafoor A,etal.Security models for web-based applications [J].Communications of the ACM,2001,44(2):38-72.

猜你喜欢

时限约束条件时空
基于一种改进AZSVPWM的满调制度死区约束条件分析
跨越时空的相遇
镜中的时空穿梭
心电图QRS波时限与慢性心力衰竭患者预后的相关性分析
平行时空
玩一次时空大“穿越”
论民事举证时限制度
时空之门
基于半约束条件下不透水面的遥感提取方法
QRS时限对慢性心力衰竭患者远期预后的影响