基于客体管理的增强型RBAC模型的研究

2010-12-28 01:25周彦萍张志业
河北科技大学学报 2010年3期
关键词:客体静态约束

周彦萍,张志业,崔 芸

(1.河北省应用数学研究所,河北石家庄 050081;2.河北科技大学总务处,河北石家庄 050018; 3.河北科技大学机械电子工程学院,河北石家庄,050018)

基于客体管理的增强型RBAC模型的研究

周彦萍1,张志业2,崔 芸3

(1.河北省应用数学研究所,河北石家庄 050081;2.河北科技大学总务处,河北石家庄 050018; 3.河北科技大学机械电子工程学院,河北石家庄,050018)

提出了一种基于客体管理的增强型RBAC模型。该增强模型将角色思想应用于处于客体位置的目标和操作,在原有模型的基础上添加了目标角色和操作角色2个元素,相应地也增加了操作与操作角色、目标与目标角色及操作角色与目标角色的关系。对新添加的角色引入层次继承关系,对新添加的关系引入静态约束,并给出了增强模型的形式化描述。

增强型RBAC模型;客体管理;目标角色;操作角色

基于角色的访问控制(role-based access control,RBAC)与传统的自主访问控制和强制访问控制相比,代表了在灵活性和控制粒度上的一个重大进步,并正逐渐取代传统的访问控制模型而成为主流[1],它也是目前采用较多的一种访问控制机制。

RBAC最先由美国国家标准化和技术委员会(National Institute of Standards and Technology,N IST)的FERRA IOLO D F等人在20世纪90年代提出。其基本思想是将用户(主体)划分成与其职能和职位相符的角色,将客体(资源)的访问权限赋予角色,用户通过其拥有角色所具备的客体操作权限来实现授权[2]。

RBAC的建模和技术实现是目前RBAC技术的热点和难点,现有RBAC模型存在一些需要改进的方面,如缺乏对处于客体部分的目标与操作行为的管理,忽略了客体所具有的安全等级特性。另外,模型容易出现权限泛滥,不具备时间性约束。笔者提出了一种改进方案,形成了一个增强的RBAC模型,该模型细化了RBAC的原有元素定义,同时进一步扩展了新的元素。

1 NIST RBAC模型及应用中存在的问题

1.1 RBAC模型介绍

N IST标准RBAC模型,分别由核心模型(Core RBAC)、角色层次模型(Hierarchy RBAC)、静态职责分离(static separation of duty relation,SSD)和动态职责分离(dynam ic separation of duty relation,DSD)模型组成。

核心RBAC是基础模型,其他3种都是在其上的独立扩展。核心RBAC包含用户(U sers)、角色(Roles)、目标(Objects)、操作(Operations)、许可权(Perm issions)5个基本元素,权限(Prem s)被赋予角色。当一个角色被指派给用户时,此用户就拥有了该角色所包含的权限,会话(Sessions)是用户与激活的角色集合之间的映射;层次RBAC在核心RBAC的基础上引入了角色的层次关系,即角色可以通过继承其他1个或多个角色来自动获得被继承角色所拥有的所有权限。角色间的继承关系可分为一般继承关系和受限继承关系;约束RBAC在核心RBAC的基础上引入了约束概念,约束决定了核心RBAC中各种部件的操作是否可被接受。它可以应用到用户与角色、角色与权限、用户与会话及角色与会话等关系中,分为静态职责分离和动态职责分离[3]。静态职责分离控制用户和角色的指定过程,动态职责分离控制角色的激活过程。它们的形式化模型描述见图1-图4。

1.2 NIST RBAC模型存在的缺陷

安全应用系统除了有大量的用户之外,还有各种各样的客体、动作和过程(如各种业务过程),因此在授权关系上具有更高的复杂性。而N IST RBAC模型的管理重点集中在用户和角色所处的主体部分,缺乏对处于客体部分的目标与操作行为的管理,忽略了客体所具有的安全等级特性。当用户、角色或权限集较大时模型就显得不适应,容易出现权限泛滥,也不具备时间性约束[4-6]。

上述问题的出现,使得N IST RBAC模型在大型安全应用方面显得力不从心。例如,企业信息资源的更改操作与查看、打印操作的安全性及其具备的安全等级不同,而不同的资源体即使操作行为相同,其呈现的安全等级也不同。如网上银行、证券交易等网页的登录操作与新闻论坛网页的登录操作,二者操作引起的风险级别相差巨大,安全级别明显不同。因此,对安全等级差异悬殊的权限采用不分风险的约束明显不符合安全性要求。

2 增强型RBAC模型

笔者针对N IST RBAC模型在实际应用中产生的问题,提出了1种基于客体管理的增强型模型。形式化模型描述见图5。

图5 基于客体管理的增强型N IST RBACFig.5 Extend N IST RBAC based on objectmanagement

2.1 主体部分

主体部分由用户(O)、角色(R)和会话(S)组成。角色能够继承用户-用户角色的多对多关系,同时受到静态职责分离的约束,用户角色和会话之间满足动态职责分离的限制。

2.2 客体部分

客体部分分为目标(OB)与目标角色(ROB)、操作(OP)和操作角色(ROP)。通过为操作角色指定目标角色来形成权限,并将权限赋予用户角色。

目标指资源或对象,包括文件、目录、数据库、网页等软件资源,也包括打印机、扫描仪等硬件资源。操作是主体对目标的行为。对目标和操作的特性(如所属模块、类别、安全级别等)进行抽象,形成目标角色和操作角色。2种角色满足层次概念,能够继承。从目标或操作集合到其相应的角色集合引入多对多的关系映射,以表示其被赋予角色。目标-目标角色关系、操作-操作角色关系、目标角色的继承关系、操作角色的继承关系,都受到静态的约束,控制角色的指定过程是依据目标或操作的安全级别和安全属性。

2.3 指派关系和约束

2.3.1 定义1:集合

设I和N为自然数集,U={ui}i∈I为用户集,RU={rui}i∈I为用户角色集,S={si}i∈I为会话集,OB= {obi}i∈I为目标集,ROB={robi}i∈I为目标角色集,OP={opi}i∈I为操作集,ROP={ropi}i∈I为操作角色集,P= {pi}i∈I为权限集。

2.3.2 定义2:关系

1)用户-用户角色:URU⊆U×RU,(u,ru)∈URU表示用户u享有角色ru。

2)用户-会话:US⊆U×S,(u,s)∈US表示用户u创建会话s。

3)用户角色-会话:RUS⊆RU×S,(ru,s)∈RUS表示在会话s中激活角色ru。

4)目标-目标角色:OBROB⊆OB×ROB,(ob,rob)∈OBROB表示目标ob享有角色rob。

5)操作-操作角色:OPROP⊆OP×ROP,(op,rop)∈OPROP表示操作op享有角色rop。

6)权限-操作角色-目标角色:PR⊆P×ROP×ROB,(p,rop,rob)∈PR表示权限p定义为能够对目标角色rob实施操作角色rop所拥有的行为。

7)权限-操作-目标:PA⊆P×OP×OB,(p,op,ob)∈PA表示权限p定义为能够对目标ob实施操作op所拥有的行为。

8)用户角色-权限:RUP⊆RU×P,(ru,p)∈RUP表示用户角色ru拥有权限p。

9)用户角色层次结构偏序关系:RUH⊆RU×RU,(rui,ruj)∈RUH表示角色rui是角色ruj的父角色,ruj是 rui的子角色,子角色继承父角色的权限。简记为rui≤ruj,当rui≠ruj时,记为rui

10)目标角色层次结构偏序关系:ROBH⊆ROB×ROB,(robi,robj)∈ROBH表示角色robi是角色robj的父角色,robj是robi的子角色,子角色继承父角色的权限。简记为robi≤robj,当robi≠robj时,记为robi

11)操作角色层次结构偏序关系:ROPH⊆ROP×ROP,(ropi,ropj)∈ROPH表示角色ropi是角色ropj的父角色,ropj是ropi的子角色,子角色继承父角色的权限。简记为ropi≤ropj,当ropi≠ropj时,记为ropi

2.3.3 定义3:集值函数

1)返回某用户享有的角色集合:assigned_ru:(u∶U)→2RU,即assigned_ru(u)={ru∈RU|(u,ru)∈URU}。

2)返回指定的某角色的用户集合:assigned_u:(ru∶RU)→2U,即assigned_u(ru)={u∈U|(u,ru)∈URU}。

3)返回某用户角色拥有的权限集合:assigned_p:(ru∶RU)→2P,即assigned_p(ru)={p∈P|(ru,p)∈RUP}。

4)返回指定的某权限的用户角色集合:assigned_ru_p:(p∶P)→2RU,即assigned_ru_p(ru)={p∈P|(ru,p)∈RUP}。

5)返回创建的某会话的用户:sess_u:(s∶S)→U,即sess_u(s)={u∈U|(u,s)∈US},sess_u(s)只包含1个元素。

6)返回某会话所激活的用户角色集合:sess_ru:(s∶S)→2RU,即sess_ru(s)={ru∈RU|(ru,s)∈RUS}。

7)返回指定的某目标角色的目标集合:assigned_ob:(rob∶ROB)→2OB,即assigned_ob(rob)={ob∈OB|(ob,rob)∈OBROB}。

8)返回指定的某操作角色的操作集合:assigned_op:(rop∶ROP)→2OP,即assigned_op(rop)={op∈OP|(op,rop)∈O PROP}。

9)返回某会话的相关权限集合:sess_p:(s∶S)→2P,即sess_p(s)=∪

ru∈sess_ru(s)assigned_p(ru)。

10)返回指定权限的相关操作集合:prems_op:(p∶P)→2OP,即prems_op(p)={op∈OP|(p,op,ob)∈PA}。

11)返回指定权限的相关目标集合:prems_ob:(p∶P)→2OB,即prems_ob(p)={ob∈OB|(p,op,ob)∈PA}。

2.3.4 定义4:约束

2.4 增强型RBAC模型的安全性与合理性分析

根据笔者对该增强模型的描述和定义,并比对原有N IST RBAC模型,可知该增强模型的主体部分完全采用了原有模型的相应部分,客体部分严格沿用主体部分的结构和规则,不仅没有影响主体部分的原有性质和合理性,还将其延续到了客体部分。因此,该增强模型完整地保持了原有模型的基本性质和特点。

原有RBAC模型支持最小特权原则、职责分离原则和数据抽象原则,改进后的模型也支持这些安全控制原则。最小特权原则和职责分离原则通过动态约束和静态约束的设置来实现。安全管理员为用户分配执行任务所需的权限,未执行任务或任务终止后用户不再拥有所分配的权限。而且在执行任务过程中,当某一权限不再使用或超时时,会自动将该权限收回;安全管理员将互斥限制、先决限制等加入动态约束和静态约束中,实现分派权限和会话期间实施权限时应该满足的约束条件。因为操作权限由安全管理员通过操作角色和具体的操作行为定义来实现,不局限于操作系统提供的读/写/执行权限,它可以抽象为实际业务需要的操作权限,所以数据抽象原则也得到了支持。

2.5 增强型RBAC模型的有效性

该增强模型在某些方面有效地解决了资源、安全级别和操作权限的复杂性,具有易管理性,在保持原RBAC模型结构不变的情况下,沿用其已有的角色思想对客体部分增加了新元素,对其主体部分没有做任何改动。该增强模型本身引入的复杂性是对客体部分的目标和权限各增加1个角色,在它们之间建立3种关系和1种静态约束,其结构与原模型中主体部分的结构相同。增强部分的管理完全可以沿用原模型中的主体部分,没有为管理员增加不必要的操作复杂性。

该增强模型对客体部分加强管理,更适于应用系统复杂的安全需求,能够根据安全等级合理地实现目标和操作权限的分派方案。例如,将目标资源按类别分成设备、网页、应用软件、机密信息、一般信息等角色,每种角色包含相应的具体目标,如设备角色包括服务器、微机,甚至打印机、摄像机、U盘、光驱等;将操作权限分为登录、执行、打印、浏览、修改、删除等角色,登录角色包括各种网页的登录权限,有的登录需要验证登录者身份;利用目标角色的静态约束记录同时访问某目标的最大用户数和需要满足的条件等安全属性,如能够访问机密信息的用户条件(利润、成本及销售情况只能由主管经理查询);利用操作角色的静态约束记录某操作权限的有效时间、风险级别、某机密信息的打印份数、重要网页的最大错误登录次数、具备删除操作权限的用户应满足的条件等。

通过该增强模型能够对客体部分进行分类和抽象,充分考虑目标和权限的安全属性与风险等级,合理地将访问目标的各种权限有机结合,增强了应用系统的安全性能。

3 结 语

笔者提出的基于客体管理的增强型RBAC模型是在N IST RBAC基础上的一种改进,该模型细化了RBAC的原有元素定义,同时进一步扩展了新的元素,为RBAC模型的实现技术和应用研究有积极意义。

该模型将主体部分按用户职责分成各类角色,包括系统管理员、安全员、审核员、一般用户、高级用户等;在客体部分将目标分为硬件设备、应用软件、单位机密信息、一般信息、个人信息等目标角色,将操作分为设备读、设备写、设备添加、设备删除、软件运行、软件安装、软件卸载、增加新信息、信息更改、信息浏览、信息打印、信息删除等角色;用户角色的静态和动态约束、目标角色和操作角色的静态约束、3种角色(用户角色、目标角色和操作角色)的层次继承关系等采用关系数据库的表对象来描述;在用户角色、目标角色和操作角色之间通过在数据库里建立关系来实现对用户角色的授权,通过为用户指派角色(即用户-角色对应表)来实现用户的授权。

该模型设立了系统维护功能,能够对用户与用户角色、目标与目标角色、操作与操作角色进行增删改,能够根据实际需求调整各个动态约束和静态约束的设置,满足了应用系统不断变化的安全需求。该增强模型很好地满足了项目中资源目标的繁杂、庞大和安全级别复杂的要求,权限粒度可大可小,管理灵活、简便。

[1] 薛 伟,怀进鹏.基于角色的访问控制模型的扩充和实现机制研究[J].计算机研究与发展(Journal of Comguter Researoh and Develop ront),2003,40(11):1 635-1 642.

[2] FERRA IOLO D F,KU HN D R.Role-based access control[A].Proceedings of 15th National Computer Security Conference[C].[S.l.]: [s.n.],1992.

[3] FERRA IOLO D F.Proposed N IST standard for role-based access control[J].ACM Transaction on Information and System Escurity, 2001,4(3):224-274

[4] 潘德锋,彭 霞,吴信才.RBAC和FBAC的适用条件与集成[J].计算机工程(Computer Engineering),2007,33(19):147-149.

[5] 王 超.基于角色的访问控制中权限滥用的限制[J].计算机工程(Computer Engineering),2004,30(6):53-56.

[6] 孙 波,赵庆松,孙玉芳.TRDM-具有时限的基于角色的转授权模型[J].计算机研究与发展(Journal of Computer Research and Development),2004,41(7):1 104-1 109.

Research of an extend RBAC model based on object management

ZHOU Yan-ping1,ZHANG Zhi-ye2,CU I Yun3
(1.Hebei Instituteof App lied Mathematics,Shijiazhuang Hebei050081,China;2.Departmentof Campus Management,Hebei University of Science and Technology,Shijiazhuang Hebei050018,China;3.College of Mechanical and Electronic Engineering, Hebei University of Science and Technology,Shijiazhuang Hebei 050018,China)

An extend RBAC model based on objectmanagement is p resented.The model app lies the role idea to the object and the operation.The object role and the operation role are added on basisof the o riginalmodel.The relations are added acco rdingly w hich are the operation-operation role,the object-object role and the operation-object role.The hierarchical inheriting relation is introduced into the new roles and the static constraint is introduced into the new relations.Formal descrip tion of the model is given.

extend RBAC model;object management;object-role;operation-role

TP309

A

1008-1542(2010)03-0227-06

2009-12-14;

2010-01-16;责任编辑:张 军

河北省自然科学基金资助项目(08M 009)

周彦萍(1962-),女,河北石家庄人,副研究员,主要从事信息安全和计算机应用方面的研究。

猜你喜欢
客体静态约束
最新进展!中老铁路开始静态验收
“碳中和”约束下的路径选择
静态随机存储器在轨自检算法
约束离散KP方程族的完全Virasoro对称
符号学视域下知识产权客体的同一性及其类型化解释
自我约束是一种境界
行动语义、客体背景和判断任务对客体动作承载性的影响*
适当放手能让孩子更好地自我约束
具7μA静态电流的2A、70V SEPIC/升压型DC/DC转换器
旧客体抑制和新客体捕获视角下预览效应的机制*