APP下载

基于属性RBAC及委托性质的使用控制模型

2010-09-12蔡伟鸿蔡建坤

关键词:谓词委托客体

蔡伟鸿, 蔡建坤, 徐 涛, 韦 岗

(1.汕头大学计算机科学与技术系,广东 汕头 515063;2.华南理工大学电子与信息学院,广东 广州 510640)

基于属性RBAC及委托性质的使用控制模型

蔡伟鸿1,2, 蔡建坤1, 徐 涛1, 韦 岗2

(1.汕头大学计算机科学与技术系,广东 汕头 515063;2.华南理工大学电子与信息学院,广东 广州 510640)

针对UCON未涉及特权委托的基本特征和权限管理的缺陷,提出了基于属性RBAC的带委托性质的使用控制模型(EUCON).将角色、委托和扩展属性等要素引入到EUCON,构建了基于属性-角色的访问控制方法,提高了模型的可变性和动态性,并使用区间时序逻辑对该委托模型的完备性进行逻辑验证,最后提供了网上行政审批的实例,为模型的应用奠定了一个很好的实例基础.

EUCON;UCON;RBAC;委托;区间时序逻辑;网上行政审批

0 引 言

随着网络规模的逐渐增大,传统的访问控制模型已不能满足系统授权的安全性要求.由Sandhu等人[1-2]提出的使用控制模型(Usage Control,UCON)是一种全新的访问控制方法,在满足目前大量存在的商业和政府部门系统安全需求方面显示了极大的优势,已被理论界和工业界所接受,并成为研究的热点.但是UCON也存在一些缺陷,尤其在大型分布式系统中.一方面,无法满足系统开发与重用的简易化与安全管理需求,另一方面,也无法满足系统用户希望在符合系统安全规定的情况下自主地把一些权限委托给其他用户,以便后者代替前者完成某项任务的需求.Zhao Baoxian等人[3]在UCON的基础上提出了TUCON,该模型采用有效时间和最大使用次数的限制来简化UCON的应用,然而对于大多数应用来说,使用次数的限制是不合理的.基于有效时间限制和定量授权限制的TMAAC模型[4],提供了更严格的限制条件以防止授权的滥用,但该文未对模型策略的实用性进行描述.Zhang Zhiyong等人[5]对委托基本特征进行了研究,分析了它在UCON体系框架中的具体表现,给出了一种具有委托特征的UCON即UCOND,但该模型未对权限进行管理.在模式描述方面,Zhang Xinwen等人[6]利用动作时序逻辑对UCON进行了表述,但其标准中假设状态转换之间的动作总是立即执行,不存在时间延迟,这在实际应用中是不合理的.田光辉等人[7]使用DDL对UCON的授权模型进行描述,但是DDL主要表现在模型的逻辑推理与实现,而未涉及对逻辑的检查与验证.

传统的行政审批系统存在着效率低下、缺乏监管等问题,因此电子政务的发展势在必行.但是在电子政务系统中,系统的安全性要求特别高,采用怎样的控制模型对系统各主体的权限进行管理至今仍是个难题.本文着眼于网上行政审批的需要,针对UCON的不足和角色权限等级管理的必要性,提出基于属性RBAC[8]的带委托性质的使用控制模型(Extended UCON,EUCON),并通过引入一种广泛使用的模型验证语言——区间时序逻辑(Internal Temporal Logic,ITL)[9-10],对EUCON的控制策略进行逻辑表述以及验证其逻辑完备性,最后以网上行政审批为例子,说明模型的具体实用性,为各省市网上行政审批建设提供参考模型.

1 EUCON模型

1.1 EUCON组成

图1 EUCONABCD框架模型

EUCON是在UCON的基础上提出的,因此该模型具有UCON的主要要素,包括主体(s)、客体(o)、 客体属性(ao)、 权限(p)、授权(A)、 义务(B)和条件(C). 除此之外,EUCON 还包含角色(r)、 委托(D)和主体扩展属性(aes)3 个新要素.

定义1 角色

角色是根据具体职责划分而进行的任务范围规定的多个集合,代表了一种资格或权利.在EUCON中由属性与权限共同组成具有不同含义和功能的角色.角色的引入,将权限和用户分开,权限只与角色关联,解决了UCON中将权限直接分配给用户所带来的系统可重用问题和安全问题,也创新性地构建了基于属性-角色访问控制方法.该方法的思想就是把对用户的授权分成两部分:用角色充当用户行使权限的中介;用属性作为判断用户能否拥有角色的依据.如图1所示,不同于传统角色访问控制模型,EUCON中除用户与角色之间以及角色与权限之间形成了两个多对多的关系外,角色与属性之间以及角色与使用决策之间也形成了两个相互影响的关系.

定义2 委托

委托是指系统中的一个活动实体授权另一个活动实体,使后者可以代表前者执行相应任务[11].根据委托的粒度特征,可分为细粒度委托授权和中粒度委托授权.细粒度委托授权是允许用户将角色的部分许可委托给另一用户,而不是角色的整体委托;中粒度委托授权是指用户将自身的角色整体委托给另一用户[5].EUCON涵盖了这两种类型的委托,使得其具有一般性,可以适合各类型访问控制的委托授权.引入委托后,系统每个主体具有的属性将包括两部分,其一是主体原有的属性,其二是该主体接受另一主体(或系统)委托所得到的属性.例如主体A接受其上级B所委托的属性p1,则其主体属性将包括原来具有的属性和属性p1.

定义3 主体扩展属性

为了更清晰地描述引入委托后模型属性的可变性和动态性,将主体的属性划分为初始属性与委托属性,提出了主体扩展属性的概念.主体扩展属性由初始属性与委托属性组成.初始属性最初是由系统分配给用户的属性,常见的初始属性有:用户名、用户组、角色和安全级别等.委托属性是通过委托授权而得到的属性,通常包括委托客体及相应访问权限等内容.扩展属性是可变的,在主体访问客体的过程中可能会被系统改变或是得到被委托的属性.

EUCON是一种具有普遍特征的控制模型,不仅包含了UCONABC[2],还包含了UCON未涉及的委托模型,构成EUCONABCD核心模型体系.同时在权限控制中引入角色,解决了将权限指定给用户带来的系统开发、重用问题和系统安全管理问题.相对于UCON,EUCON具有更一般性,涵盖更多种访问控制类型,是UCON的扩展,模型框架如前文图1所示.

表1 EUCONABCD模型矩阵

1.2 EUCONABCD核心模型体系

在EUCONABCD模型中,假设有一个访问客体资源的请求,对访问权限的访问决策发生在请求前或者请求期间,主体属性、客体属性的可变性允许系统在使用期间对主体或者客体的属性进行更新.在访问决策过程中没有属性更新要求表示为 “0”,使用前期、期间、后期分别标记为 “1、2、3”.根据这些标准,得到表1所示的18种可能的核心模式.现实中可能的情况标记为 “Y”,否则为 “N”.

图2(a)显示了EUCONABCD中A、B、C、D在给定上下文中的可能的组合以及它们之间的关系.A、 B、 C、 D模型可以分别划分成图2(b)、(c)、(d)和(e)表示的几种情况. 图2说明了模型体系空间的丰富性以及上下文决策规则的灵活性.EUCON模型是基于授权、义务、条件和委托4种决定策略来检查访问控制决策,实施动态的细粒度访问控制的,既保留了RBAC模型又保留了UCON的优点,内容非常丰富,包含了18种子模型.

2 EUCON逻辑模型

在逻辑描述EUCON之前,本节先描述一下ITL各要素在EUCON中的表述.

2.1 属性与状态

EUCON是基于角色和属性的访问控制模型,控制策略涉及到主体、客体、主体属性、客体属性和系统属性,其中,主体和客体是常变量,主体属性和客体属性是可变变量,而系统属性跟主体属性和客体属性没有直接的联系.在访问前、访问过程中或者访问后,属性的值可能会发生变化.

授权判决以用户提出访问请求开始.本文使用一个3元组(s,o,p)来表示主体s希望以权限p访问客体o的访问请求.为了描述当前访问过程的状态,定义了函数z(s,o,p).

定义 4 状态函数 z(s,o,p)

状态函数 z(s,o,p)表示当前访问过程的状态, 是从(s,o,p)到{zinitial,zrequesting,zdenied,zaccessing,zrevoked,zend}的映射[6], 记为:z(s,o,p):{(s,o,p)}→{zinitial,zrequesting,zdenied,zaccessing,zrevoked,zend}, 其中zinitial表示初始状态;zrequesting为主体s刚提出访问请求(s,o,p);zdenied表示访问请求被拒绝;zaccessing是访问请求(s,o,p)被系统通过,主体s正在对客体o进行p操作;zrevoked为系统撤销访问请求(s,o,p); zend表示访问结束状态.

2.2 谓词

谓词是由变量和常量组成的布尔表达式,包括了主体属性、客体属性和系统属性.根据属性形式的不同,谓词包含几种类型:主体、客体、主体属性或者客体属性的单一谓词;主体与客体、主体初始属性或者主体委托属性与客体属性之间的谓词等.如Alice.credit≥$100,表示判断Alice的积分是否大于等于100美元,即为主体属性的单一谓词;own(Alice,file),表示文件file是否归主体Alice所有,是主体与客体之间的谓词.在委托模型中,使用k1,k2,…,ki来表示主体委托属性与客体属性之间的谓词.

2.3 动作

在EUCON中,状态之间的转移通过动作来完成,动作发起者可以是系统,也可以是用户.图3是EUCON在访问过程中涉及到的动作与发生时刻.

图3 主体与系统动作

为描述EUCON中的状态转移与更新属性值的动作,定义了以下主体和系统的动作:

MTryAccess(s,o,p)表示用户 s产生一个访问请求(s,o,p);

MPermit(s,o,p)表示系统授权(s,o,p);

MPermitAccess(s,o,p)表示系统允许访问请求(s,o,p);

MDenyAccess(s,o,p)表示系统拒绝访问请求(s,o,p);

MRevokeAccess(s,o,p)表示系统撤销访问请求(s,o,p);

MPreUpdate(att)表示系统在访问前更新属性att,其中,att可以是主体扩展属性(aes)、 客体属性(ao)或者系统属性(asys);

MOnUpdate(att)表示系统在访问过程中更新属性 att;

MPostUpdate(att)表示系统在访问后更新属性att.

为了方便描述EUCON逻辑模型,突出区间时序逻辑中各表达式、公式和动作之间的相互关系,以下对操作符 进行定义.

定义5 操作符

假设f表示任意的表达式或者公式,w表示任意动作,则公式w f表示所有满足f的区间会以满足动作w结束,即如果满足表达式或者公式f,则w会在f发生后的时间里发生.记为:

2.4 EUCOND模型

由于篇幅的原因,此处仅以EUCOND子模型为例,通过采用ITL逻辑描述EUCOND模型及访问控制策略,从而验证模型的完备性.其他子模型也可以通过类似的方法验证其完备性.

定义 6 EUCOND定义为一个 6 元组:Q = (I,Att,Z,M,P,R′),其中 I表示对象集, 包括主体、客体、系统;Att表示属性集,包括主体扩展属性、客体属性和系统属性;Z表示状态谓词集,包括主体的、客体的状态谓词和访问状态谓词;M表示动作集;P表示权限集;R′表示主体角色集,包括主体原有角色和接受委托得到的角色.

EUCON委托模型由于既可以委托属性又可以委托角色,因此可将EUCOND根据需要而对属性集和角色集进行对应的调整,分为细粒度委托模型和中粒度委托模型.在细粒度委托模型中,元素Att为主体扩展属性、客体属性和系统属性的集合,R′只包括主体原有角色.而在中粒度委托模型中,Att为主体原始属性、客体属性和系统属性的集合,R′包括主体原有角色接受委托得到的角色.

EUCOND包括EUCONpreD子模型和EUCONonD子模型.下面运用ITL对各子模型进行描述,同时给出其访问控制策略,并逻辑验证其完备性.

2.4.1 EUCONpreD模型

EUCONpreD模型在使用决策过程中使用预先授权,委托包括主体属性或者角色的委托,在允许使用前要进行委托判决.根据可变性,它只有EUCONpreD1一种模型.但由于委托粒度特征不一样,又将EUCONpreD1分为基于细粒度的预先委托EUCONpreDs1和基于中粒度的预先委托EUCONpreDm1.

preDs1 EUCONpreDs1是系统的主动实体将它的属性委托给其它主动实体,以便后者能够代表前者执行某些权限的预先委托模型.它是在使用前利用更新功能来修改主体属性和客体属性的.使用控制决策如下:

其中asys∈Att,r∈R′,而k1,k2,…,ki表示本次访问所涉及的由主体委托属性和客体属性组成的预先委托谓词,公式as.r=∃asys.r·MPermit(asys.r,o,p)判断主体s具有的角色是否是可以对客体o进行操作的权限p所对应的角色.在以上两者必须均为真时,同时主体有提出访问请求MTryAccess(s,o,p)且系统对属性进行更新后,再根据系统对属性的更新情况决定是否允许用户的访问请求.

preDm1 EUCONpreDm1模型是系统的主动实体将他的某个角色委托给其他主动实体,使后者能够代替前者执行某些权限.主客体属性的更新在授权前执行,其使用控制决策用ITL描述如下:

其中as.rd表示主体接受其他主动实体委托过来的角色,谓词JCan_d(asys.r)描述角色r是否可以被委托, 公式 as.rd= ∃asys.r·(MPermit(asys.r,o,p)∧JCan_d(asys.r))描述主体 s 被委托角色是否是可被委托的、拥有对客体o进行操作的权限p的角色.规则(2)与preDs1相同.

2.4.2 EUCONonD模型

EUCONonD中,在使用权利执行过程中,需要连续地或者定期地进行委托判决.一旦不满足委托要求,那么当前允许的使用权利就会被收回,对客体的操作就会被停止.根据可变性,EUCONonD模型中,只有EUCONonD2一种模型.但由于委托粒度特征不同,将EUCONonD2分为基于细粒度的使用中委托EUCONonDs2与基于中粒度的使用中委托EUCONonDm2.

onDs2 EUCONonDs2中, 委托的对象是属性.用户提出的访问请求不需要预先判决就可以访问,但是系统在整个访问过程中会不断地检测和更新主客体属性,其访问控制策略用ITL语言描述如下:

规则(3)描述系统在访问过程中不断检测该次访问所涉及到的主体委托属性、客体属性等相关属性和主体的角色属性,一旦出现不满足的情况立即撤销该次访问.规则(4)表明系统在整个访问过程中会不时地对主客体相关信息进行更新.

onDm2 EUCONonDm2与EUCONonDs2基本相同,差别在于EUCONonDm2模型是对角色的委托,而不是对属性的委托.

3 实 例

EUCONABCD的形式化描述验证了模型的完备性,并提出了其访问控制策略,为模型的具体实现提供逻辑基础.下面通过网上行政审批的实例来说明EUCONABCD的实际应用.科技局项目申请书的行政审批流程,角色主体关系以及角色权限之间的关系如图4及表2、表3所示.假设项目申请书o1需要自受理行政许可申请之日起10天内作出行政许可决定,而局长John由于出差在外不能对o1进行行政批准,于是他希望把r1中的权限p1转授给秘书Mary,代替他执行o1的项目审批权限.但出于安全上的考虑,John要求Mary的项目审批要在副局长Tom的监督下进行,即Mary要得到Tom的确认才能进行下一步的审批工作,同时要求Mary每隔一段时间t要输入委托验证码进行身份验证.

图4 行政审批示意图

表2 角色-主体

表3 角色-权限

如果平台采用UCON,则其对权限的管理将变得复杂和混乱,不符合权限和职责明确的原则,而且无法实现权限委托,因此不能直接采用UCON.但仅采用基于角色的访问控制模型(RBAC),虽然可以解决权限管理的问题,但是不能对角色的访问进行连续的控制,事实上一旦主体(Mary)获得了相关的角色(r1),就应该进行该角色下的权利活动(项目批准)而不应受系统的控制,于是有必要进行访问的连续控制以降低行政审批中由于某角色被非法获取而产生的安全问题.综上,对于这类既需要很好的权限管理又需要对访问进行连续性和灵活性控制的访问控制问题,RBAC和UCON都无法实现.而本文的EUCON则可以既简洁又安全地解决此类问题.由于项目审批权限p1是用户Mary接受John委托得到的,即为用户的委托权限,则此实例的策略可以用EUCON中的onDs2模型来描述.以下使用t′表示主体的时间属性,即主体对项目行政审批的时间,C(s1,s2,p)表示主体 s1监督 s2进行 p操作, V(t)表示每过 t时间输入验证码. 其访问策略的具体过程如下:

开始:

规则:

4 结 语

本文针对UCON在委托授权以及权限管理方面的不足,提出了基于属性RBAC的带委托性质的使用控制模型EUCON.模型通过引入角色的概念,解决了将权限直接分配给用户所带来的系统复杂性问题、灵活性问题和安全问题;通过引入委托,完善了模型的委托权限控制功能并同时考虑了权限的委托粒度特征,也涵盖了细粒度委托和中粒度委托.为了更清晰地描述引入委托后模型属性的可变性和动态性,提出了扩展属性的概念,还通过运用一种广泛使用的模型验证语言——区间时序逻辑对EUCON的委托模型进行逻辑表述,并验证了其完备性.最后,给出了行政审批的实例,进而说明了EUCON理论研究的价值.本研究下一步将对EUCON的角色管理和委托授权进行研究.

[1] Park J, Sandhu R.Towards usage control models: beyond traditional access control[C]//proc of the 7th ACM Symposium on Access Control Models and Tcehnologies.California: ACM Press,2002:57-64.

[2] Park J,Sandhu R.The UCONABCusage control model[J].ACM Trans on Information and System Security, 2004, 7(1): 128-174.

[3] Zhao Baoxian, Ravi Sandhu, Zhang Xinwen, et al.Towards a times-based usage control model[J].DBSec, 2007: 227-242.

[4]Yang Ran, Lin Chuang, Feng FuJian.A time and mutable attribute-based access control model[J].Journal of Computers, 2009,6(4): 510-518.

[5] Zhang Zhiyong, Yang Lin, Pei Qingqi, et al.Research on usage control model with delegation characteristics based on OM-AM methodology[C]//Proceedings of IFIP International Conference on Network and Parallel Computing-Workshop on Networks System Security.Washington D C:IEEE Conputer society, 2007: 238-243.

[6] Zhang Xinwen, Park J, Sandhu R.A logical specification for usage control[C]//Proceedings of the 9th ACM Symposium on Access Control Models and Technologies.New York:ACM Press,2004:67-75.

[7] 田光辉,吴江,张德同,等.基于动态描述逻辑的UCON授权模型[J].计算机工程,2008,34(19): 163-166.

[8] Sandhu R, Coyne E,Feinstein H, et al.Role-based access control models[J].IEEE Computer,1996, 29(2): 38-47.

[9]Antonio Cau, Ben Moszkowski. Interval temporal logic, HTML version of the ITL home page[EB/OL].http://www.cse.dmu.ac.uk/STRL/ITL/,2009-05-15.

[10]Allen J F,Ferguson G.Actions and events in interval temporal logic[J].Journal Logic and Computation, 1994, 4(5): 531-579.

[11]Barka E, Sandhu R.Role-based delegation model/hierarchical roles(RBDM1)[C]//Proceedings of the 20th Annual Computer Security Applications Conference. Washington D C: IEEE Press, 2004:396-404.

Abstract:As UCON model does not involve the basic characteristics of the delegation and the usage of permissions is not well-management,a new model based on attribute-RBAC with character of delegation usage control is proposed. Key elements such as role,delegation and extended-attribute into usage control are introduced.A new access control method that based on attribute-role,which makes the model more variably and dynamically is presented.In addition,Interval Temporal Logic is used for logically demonstrating the completeness of EUCON model based on delegation.Finally,an application of administrative examination and approval is articulated.offering a good example for application of EUCON.

Key words:EUCON; UCON; RBAC; delegation; interval temporal logic; administrative examination and approval

Model of Attribute-RBAC with Character of Delegation Usage Control

CAI Wei-hong1,2, CAI Jian-kun1, XU Tao1, WEI Gang2
(1.Department of Computer Science and Technology of Shantou University, Shantou 515063, Guangdong, China;2.School of Electronic&Information Engineering, South China University of Technology, Guangzhou 510640,Guangdong, China)

TN 915

A

1001-4217(2010)04-0057-09

2010-06-04

蔡伟鸿(1963-),男,广东潮州人,教授. 研究方向:网络与通信、信息安全与应用研究.E-mail:whcai@stu.edu.cn

国家自然科学基金-国家杰出青年科学基金项目(60625101);省部产学研合作引导项目(2009B090300345);广东省现代信息服务业发展专项(GDIID2008IS046)

猜你喜欢

谓词委托客体
被遮蔽的逻辑谓词
——论胡好对逻辑谓词的误读
党项语谓词前缀的分裂式
符号学视域下知识产权客体的同一性及其类型化解释
绩效评价在委托管理酒店中的应用
也谈“语言是存在的家”——从语言的主词与谓词看存在的殊相与共相
治理现代化:委托制下的权力清单制
旧客体抑制和新客体捕获视角下预览效应的机制*
招标代理中的授权委托——以案说法
委托理财忌保底 投资风险需自负
关税课税客体归属论