基于组织结构的RBAC 扩展模型及应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于组织结构的RBAC 扩展模型及应用
摘要:针对传统的基于角色的访问控制模型所存在的问题,提出了一种基于组织结构的rbac扩展模型,该模型引入组织结构和用户组,有效地解决了目前rbac权限管理存在的问题,满足大型企业对权限管理的精细化管理要求。

关键词:基于角色的访问控制;组织结构;访问控制模型;角色;用户组
中图分类号:tp311 文献标识码:a 文章编号:1009-3044(2013)03-0497-03
在信息系统安全机制中,主流的访问控制策略有自主访问控制dac、强制访问控制mac和基于角色的访问控制rbac。

目前,基于rbac的访问控制策略一直是信息系统安全机制的研究热点[1],也得到了很好的应用[2-3]。

rbac将用户与角色联系起来,简化了权限管理。

中国石油兰州石化公司是中国西部重要的炼化生产基地,近年来,兰州石化信息化建设和应用取得了良好的成效,随着企业规模的日益扩大和信息化建设水平的提高,信息系统和用户数量不断增长,对信息安全管理提出了新的挑战,现有的系统访问控制策略在部分功能上并不能完全满足公司对于信息安全的精细化管理要求。

传统的nist标准rbac模型由4个部件模型组成,其核心对象模型设计由用户、角色等构成,但在大型企业应用中存在角色授权复杂、授权工作量大等问题。

国内外学者对此都有相关的研究。

本文
提出一种基于组织结构的rbac扩展模型,并介绍该模型在兰州石化公司信息系统中的应用情况。

1 相关研究
1.1 pmi角色模型
华中科技大学的徐兰芳研究了用权限管理基础设施pmi的角色模型实现基于角色的访问控制的相关问题,提出了一种改进pmi角色模型[4]。

pmi角色模型实质上仍然是基于rbac的思想,与传统的rbac模型相比,简化了对用户的管理,用xml文件表达策略,能够解决rbac中的约束问题,通过远程和本地证书库,提高了健壮性和证书查询效率。

1.2 基于角色和用户组的扩展访问控制模型
中南大学邢汉发等人针对传统的rbac所存在的问题[5],提出了基于角色和用户组的扩展访问控制模型,改进后的扩展模型e-rbac 应用在某信息管理系统中的访问控制模块,并使用模拟数据进行了验证。

该模型在一定程度上解决了因用户岗位变动而引起的权限变更,增强了对权限管理的灵活性。

1.3 基于组织结构模型
张瑞卿等人针对传统rbac模型存在的问题,提出了一种改进的基于组织结构的io-rbac模型[6]。

在该模型中,角色必须结合特定的组织机构才能进行授权,其权限则划分为公共权限和私有权限两部分,公共权限可以被继承,而私有权限不能被继承;同时组织结构上下级之间存在权限继承关系,即上级具有继承下级的权限。

同时还可以根据需要对特殊用户进行直接临时授权,大大降低了角色数量和维护工作量。

2 os-erbac模型
2.1 基本思路
1)用户与组织机构结合
大型企业通常存在大量的同构部门,传统的方法将权限定义为对客体集合进行特定操作集合的权力,需要的角色管理工作量非常庞大。

为了减少角色维护工作量,实现权限分配粒度精细化,可以将用户与部门层级联系起来,角色控制信息资源与功能操作的可访问性,而用户控制部门层级数据的可访问性,角色和用户分别独立设计,从而可以更好地支持责任分离原则。

2)角色和用户组混合授权
为了使系统适合于分散式权限管理,可以加入用户组这一概念。

如果用户属于同一个组织机构或者岗位对系统的权限要求相同/相似,则可以创建一个用户组进行统一管理,将这些用户添加到用户组中,再对用户组进行角色授权,使用户组中所有用户获得权限。

当需要改变权限时,只需要修改用户组所属角色即可。

2.2 os-erbac模型描述
在os-erbac模型中,访问控制授权方式仍然符合标准rbac的模型,先按照要求创建所需角色,并对角色进行授权,然后根据需要将不同用户分配到不同的角色中去,使用户获得相应权限。

os-erbac模型中用户对数据资源对象的个性化访问权限是通过
用户所在的部门层级来管理的,部门层级按照组织机构定义为树形结果,当用户访问数据时,系统将根据用户部门层级自动过滤数据,从而实现用户对数据资源的个性化访问。

图1 是os-erbac权限控制模型示意图。

os-erbac权限控制模型的授权方式如下:用户u对对象o具有的访问权限记为p(u,o),则用户u所具有的权限可以表示为如下关系:
其中,其中,of表示功能对象,or表示资源对象;[pr(r(u),of)]表示角色r对of的访问权限,角色r中包含用户u;[pg(g (u),of)]表示用户组g对of的访问权限,用户组g中包含用户u;[ps(s(u),or)]表示组织机构s对or的访问权限,用户u
属于组织机构s;p(u,o)表示用户u的最终权限,最终体现为角色权限、用户组权限以及组织机构权限之和。

从权限控制模型的描述中可以发现,权限管理是按照用户组织机构或者用户岗位职责进行管理的。

在本模型中,组织机构可以看做是一个单独的层级管理节点集合,每个层级对应着一个组织机构,节点层级存在上下级关系,对应着组织机构的上下级关系;上层节点自动继承下层节点对组织机构的访问权限,但不一定继承对访问对象和功能的权限,从而使得本模型的控制粒度更加精细,授权方式更加简单灵活。

3 os-erbac实现和应用
根据os-erbac模型的描述和授权的流程,将所用的信息存于关
系数据库中,其概念数据模型如图2所示。

笔者以microsoft visual studio 2010为开发工具,数据库为oracle 9i,设计实现了兰州石化某大型信息管理系统中的权限管理功能,目前该系统已经在稳定运行。

该系统的用户涉及公司各主要处室、各主要分厂和所有车间,用户数量大,涉及的组织机构复杂,同时部分岗位变动频繁,部分人员承担的临时工作较多。

本文根据工作中实际需求,设计了os-erbac模型,该模型继承了标准rbac的特点,并实现了按照用户与组织机构结合、角色和用户组混合授权的思路;同时在实际的信息系统中得到了应用。

该模型符合大型信息管理系统中的权限管理功能的特点,有效解决了权限管理复杂、工作量大等问题,增加了系统功能变化的灵活性。

该权限管理模块作为独立子系统,具有很好的可重用性,可以方便地应用于其它信息系统。

4 结论
os-erbac在兰州石化某大型信息系统中应用,经测试和使用实践,该模型实现的权限管理模块较好地实现了授权功能,通过对用户、用户组、角色的混合授权,以及对组织机构层级节点的授权,有效地解决了目前rbac权限管理存在的问题,满足大型企业对权限管理的精细化要求,在实际应用系统中取得了良好的效果。

参考文献:
[1] 丁胜,陈建勋.基于rbac模型的安全访问机制建模研究[j].计算机应用与软件.2005,22,115-117.
[2] 廖尔崇,徐晓飞,刘旭东,等.扩展的角色访问控制模型及其应用[j].计算机工程与设计,2008,29(7):1608-1611. [3] 李帆,郑纬民.基于角色与组织的访问控制模型[j].计算机工程与设计,2005,26(8):2136-2140.
[4] 龙勤,刘鹏,潘爱民.基于角色的扩展可管理访问控制模型研究与实现[j].计算机研究与发展,2005,42(5):868-876. [5] 邢汉发,许礼林,雷莹.基于角色和用户组的扩展访问控制模型[j],计算机应用研究,2009,26(3):1098-1010.
[6] 张瑞卿,舒坚,蔡柯,刘琳岚.改进的基于组织结构的rbac 模型[j],计算机工程与设计,2009,30(23):5340-5343.。

相关文档
最新文档