科技通报 第29卷第6期 Vo1.29 No.6 2Ol3年6月 BULLETIN 0F SCIENCE AND TECHN0L0GY Jun.2013 一种企业级分层访问控制模型研究 谢 曼 喃京工业大学电子与信息工程学院,南京210009) 摘要:针对企业级信息系统中用户多而分散、业务管理层级分明所引起的访问控制复杂这一问题,提 出一种企业级分层访问控制模型,结合用户组织建模和角色分层,实现用户与角色的动态管理,通过角 色任务授权实现权限的动态管理。通过实践验证,该模型可行、有效。 关键词:访问控制;角色分层;角色任务授权;企业级 中图分类号:TP309.2 文献标识码:A 文章编号:1001—7119(2013)06—0191—03 Research on A Hierarchy Access Control Model for Enterprise ie Min (College of Electronics and Information Engineering,Naming University of Technology,Nanjing 210009,China) Abstract:With the problems of control complexity caused by the large amount of dispersed users and clear layers of management,a dynamic hierarchy access control model for enterprise is present ̄,d,in which the dynamic management of users of roles is realized through user groups and role hierarchy modeling,and role-task permission leads to the dynamic privilege management.The model is proved to be effective through real application. Key words:access control;role hierarchy;role-task permission;enterprise 0 引言 系统资源的访问权限和使用的功能无差别。因此,针对 这些问题,本文提出一种分层访问控制模型。 .RBAC模型通过引入角色概念,将系统用户和操作 权限分离,提高权限管理的灵活性,被公认为适合于大 1模型描述 型企业级系统的访问控制应用【】_卅。但实际应用中,大型 企业级信息系统跨地域、跨平台、实行企业分层分级管 大型企业级信息系统具有规模大,复杂性高,用户 理模式,其用户众多且分散,使用RBAC模型需要设置 数量多,分布广的特点。鉴于此,模型引入用户组概念, 的大量角色,角色分配和管理工作庞大且繁琐,模型缺 首先将系统用户按组织层次、用户职能等因素划分用 乏良好的自我管理能力;另一方面,对系统中受访问资 户组,然后对系统角色进行层次划分,通过定义角色层 源,RBAC模型缺乏具体的访问控制策略,也未对其安 次的访问权限来实现对系统资源的访问控制。在此基 全性特征进行抽象描述,在一定程度上不能满足实际 础上,建立用户组与角色的对应关系,以实现大型系统 访问控制中的要求。 中用户与角色的动态管理。为实现职责分离、最小权限 已有资料进行了一些有针对性的研究,然而,现有 原则和权限的动态管理,模型在角色与权限之间引入 研究大多是基于RBAC模型对访问控制中某方面问题 任务(任务点)概念,先将所定义的业务流进一步细分 的改进或拓展,对于企业级信息系统的访问控制,缺乏 为任务和任务点,再将任务与用户、角色、权限相关联, 对用户组织层次[51、角色的细分,以及对客体粒度的划 用户以某种角色进入系统后,只有在执行具体任务或 分与访问控制策略,造成不同用户获得某一角色后,对 任务点时才能获得相应的权限。 收稿日期:2012—01—14 基金项目:江苏省高校自然科学基金(09 B5200O6);东南大学计算机网络和信息集成教育部重点实验室项目(K93—9— 2olo-o4)。 作者简介:谢曼(1980一),女,南京人,硕士,讲师,研究方向:计算机应用技术。 192 科技通报 第29卷 图1企业级分层访问控制模型 Fig.1 Enterprise tiered access control model 顶层 第1层 第2层 图2用户组织层次模型 Fig.2 User groups hierarchy model 图3任务状态与执行权限示意 ‘ Fig.3 The task status and permission to execute schematic 2模型定义 定义1用户(User):用户是访问系统资源的主体。 u表示一个用户,Users表示所有用户的集合。 定义2用户组(uG):一组特定用户的集合。“ 示用户组,ug= , …,M },“ ( l 2-.,n)是其中一个用 户。 表示用户组集合, ̄luc={ug ,“ ,…, },其中 (i=1,2,…, 是一个用户组(图1所示)。 定义3角色(Role):角色是指业务流环境中具有 特定职能或工作的活动主体。 为一个角色,Roles表示 系统中所有角色的集合。 定义4角色层次(RL):角色层次表述为一个树结 构,树的根节点为最高角色层次 ,拥有最大访问权 限的角色ro;根节点的下一层次为 ,拥有第二级别访 问权限角色 以此类推。 定义5任务(Task):在业务流程中的一项具体工 作称为任务。任务分为若干操作步骤,具有完整语义的 步骤称为任务点,用t表示,t∈Task。每个任务点有4种 状态:等待态,任务等待被执行;执行态,任务正在被执 行;完成态,任务已执行完成;锁定态,特定情况下,任 务终止执行并被管理员锁定。TG(Task Group)表示任务 集,VTask(Task∈TG)Task={t1,t2,…,t l t ∈tl。 定义6客体集(Os):客体是系统中对一组受访资 源的抽象,客体集则是多个抽象的集合。 定义7客体实例(oi):客体实例是系统中实际受 访的资源,根据受访问资源的不同属性可以对其分类 抽象。 定义8操作权限(OP1:允许系统用户对访问客体 可施加动作的权限。用OPG表示操作权限的集合。 Vt(t∈Task)拄{DP1,0P2…OP.1 0 ∈OP}。 定义9会话(Session):一个会话是一个用户到多 个角色的映射,设SESSION为会话集,则用户“发起的 会话集表示为:u_session(u:user) 2 ,session—UG(s: SESSION)--- ̄2 。是从s到uG的映射,表示会话实例s所激 活的用户组实例集[61。 3授权管理 为进行授权,首先建立用户组织层次tTl,如图2。应 用中,可按实际需求建立用户组织层次,如可按行政结 构、用户职能、工程特性等要素来建立。 根据组织层次,结合工作流中各类用户的访问控 制需要,建立角色层次模型,将具体的角色类型对应到 特定的角色层次,并为每个角色层分配可视任务项,将 整个组织按层次结构划分为不同角色层次,生成对应 的角色树。 系统通过用户一用户组指派将用户指派到相应用 户组,通过用户组一角色指派为用户分配角色,通过操 作权限一任务点指派将任务点与执行该任务点需要的 操作权限关联。当具有某个角色的系统用户进入业务 流程,首先通过其所属角色层次判断该角色的任务访 问权限,系统加载该角色的可视任务视图,当该角色调 度执行其可视任务项中的某个任务(任务点)时,系统 再通过任务点一角色指派授权关系为其授予实际的执 行权限。应用中,可按实际访问控制需求,对某些环节 进行裁剪,如任务点可归并到特定任务。 权限指派关系定义如下: 定义10用户组一角色指派(UGR),用户组与角色 第6期 谢曼.一种企业级分层访问控制模型研究 193 之间多对多的关系:UGR(r,ug)=f(r, )Ir∈R,ug∈ 了该集团旗下9家子公司的人力资源管理功能,根据不 UG,UGR(ug) UGR}。用户组 派角色r,即用户组 同层级部门用户对系统功能和业务信息的各类访问权 具有角色r。UGR(g)表示用户组 支指派的角色集合。 限要求,采用本模型,建立了三级共9类角色层次,12个 定义1 1 UUG:用户一用户组指派用户与用户组 用户组,有效的实现了分级分层权限管理控制和权限 之间多对多的关系UUG_CUR xUser。 最小化原则,降低了系统访问控制的复杂度,满足了 用户指派到用户组所具有的角色:UG(u)={uR( 集团用户的需求。 )lug∈UUG(M)},其中“∈User。 定义12操作权限一任务点指派(TOPL),操作权限 6结束语 与任务点之间多对多关系TOPLC_txOP。 权限指派函数assigned_permissions:(t:t∈Task)--- ̄2衄 本文针对现有RBAC模型应用于大型企业级系统 为一个从t ̄IJTOPL的映射:assigned_permissions(t)-{p∈ 访问控制中角色分配、权限管理上的局限性,结合用户 OPl(p,t)∈TOPL}。 组织建模和角色层次建模的思想,提出了一种基于用 定义1 3任务点一角色指派授权关系:URT f M,t, 户组的企业级动态分层访问控制模型,详细说明了模 P)={(r,u,t,p)lr∈R,“∈User,t∈Task,R uR(M),PU(u 型要素,通过用户角色授权实现系统角色的动态管理, )C_PR(r)nPR(t)},表示用户“,以角色r进人系统后,在任 通过角色任务授权实现权限最小化原则和动态管理, 务 4t,获得权限p。 降低了系统访问控制的复杂度。经实践检验,该模型切 实、有效。 4 约束 参考文献: 约束1:不存在两个具有相同用户的用户组,且不 [1】 王悦,高虎明.扩展式基于角色的访问控制模型的研究 存在两个具有相同角色的用户。 [J】.计算机工程与设计,2008,02. 约束2:不存在两个具有角色交集的角色层次。 【2] 鞠成东,廖明宏.基于RBAC模型的角色权限及层次关系 约束3:同一个任务只能指派一互斥角色集中的一 研究[J】.哈尔滨理工大学学报,2005,04. 个角色。 【3】 李铮,李端明.RBAC模型在企业信息系统架构中的应用 约束4:一个任务可以指派的角色数目为n,则n<L 与实现『J1.图书情报工作,2009,14. fL为一个阈值)。 [4】 胡迎松,陈网0.一种基于角色和部门的访问控制模型[J1. 约束5:同一个角色只能指派一互斥操作权限集中 计算机工程与科学,2006,28(7). 的一个操作权限。 [5】Xing Han—fa,et al Extended access control approach based on role and group[J].Application Research of Corn— 5实验及结果分析 puters,2009,26(3):1098-1 100. [6 6]陆淑娟,徐新艳.基于组织建模的企业级信息系统访问 控制模型[J】.计算机工程与设计,201 1,32. 本文提出的访问控制模型在某大型钢铁集团人力 [7】 姚国林,唐慧刚.工作流管理系统中的信息安全研究[J]. 资源一体化管理信息系统(E—HR)中的到了应用,整合 科技通报,2012,28(2).