优化的RBAC模型在统一权限管理系统中的应用

(整期优先)网络出版时间:2016-10-20
/ 2

优化的RBAC模型在统一权限管理系统中的应用

高丽芳1高丽娟2

1、国网河北省电力公司信息通信分公司050000;2、华北电力大学保定071003

摘要:基于角色的访问控制(Role-BasedAccessControl)作为传统访问控制模型已得到广泛的认可及应用,本文对传统的RBCA模型进行了优化,并在统一权限管理系统中实现更高效、安全、灵活的权限管理。

关键字:RBAC;权限管理;统一权限管理系统

0引言

随着社会的不断发展,对信息系统授权的方便性、灵活性及安全性提出了更高的要求。在企业级权限管理平台上,需要通过平台对接入系统进行集中授权,对权限控制提出了更高的要求。基于角色的访问控制(Role-BasedAccessControl)是较为传统并得到广泛认可的访问控制模型,但存在不便于对授权实行层层负责管理的问题。统一权限系统使用的访问权限控制模型正是基于RBCA模型,并在此基础上进行了优化,能够对企业级权限管理平台的大量用户实现层层授权及权限操作数据集控制,方便、灵活、可控。

1RBAC(Role-BasedAccessControl)模型

RBAC模型是由美国国防部(DepartmentofDefense,DoD)资助的研究和开发成果演变而来的,是目前被广泛接受的权限控制模型。标准RBAC模型由4个部件模型组成,这4个部件模型分别是基本模型RBAC0(CoreRBAC)、角色分级模型RBAC1(HierarchalRBAC)、角色限制模型RBAC2(ConstraintRBAC)和统一模型RBAC3(CombinesRBAC)。RBAC0模型如图1所示:

图1RBAC0模型

RBAC0定义了能构成一个RBAC控制系统的最小的元素集合。在RBAC之中,包含用户users(USERS)、角色roles(ROLES)、目标objects(OBS)、操作operations(OPS)、许可权permissions(PRMS)五个基本数据元素,权限被赋予角色,而不是用户,当一个角色被指定给一个用户时,此用户就拥有了该角色所包含的权限。会话sessions是用户与激活的角色集合之间的映射。RBAC0与传统访问控制的差别在于增加一层间接性带来了灵活性,RBAC1、RBAC2、RBAC3都是先后在RBAC0上的扩展。

1.1RBAC1引入角色间的继承关系

角色间的继承关系可分为一般继承关系和受限继承关系。一般继承关系仅要求角色继承关系是一个绝对偏序关系,允许角色间的多继承。而受限继承关系则进一步要求角色继承关系是一个树结构。

1.2RBAC2模型中添加了责任分离关系

RBAC2的约束规定了权限被赋予角色时,或角色被赋予用户时,以及当用户在某一时刻激活一个角色时所应遵循的强制性规则。责任分离包括静态责任分离和动态责任分离。约束与用户-角色-权限关系一起决定了RBAC2模型中用户的访问许可。

1.3RBAC3包含了RBAC1和RBAC2

既提供了角色间的继承关系,又提供了责任分离关系。建立角色定义表。定出当前系统中角色。因为有继承的问题,所以角色体现出的是一个树形结构。

在RBAC体系中,一个用户可以被赋予多个角色,一个角色也可以被赋予多个用户;一个角色可配置多项权限,一个权限也可以赋予多个角色。一个用户可以通过拥有的角色对系统的资源进行特定的操作。

2RBAC模型优化

RBAC模型中用户与资源之间的联系通过角色来实现映射,在实际工作中,同一角色对应的不同用户,由于所处的部门不同,职责不同,在同一个系统中的操作对象也不同,需要对角色、权限进行细分。通过对BRAC模型中的角色进行分层,对功能权限的控制粒度进行细化,可以实现对访问权限的更好控制。

统一权限系统中,除了用户、角色、权限对象的概念,还引入了业务组织单元、业务组织角色、功能的概念。优化的RBAC模型通过业务组织单元实现对用户的分层;通过角色分组对角色从横向上进行划分;通过功能将权限对象分层,使相似的、组合的权限对象划分在一起,细分粒度介于角色与权限对象之间;通过业务组主角色将组织单元与角色进行管理,并在纵向上对角色进行分层,是权限控制模型的层次更清晰,角色粒度更细,权限控制更方便、灵活、安全。

3优化的RBAC在统一权限管理系统的实现

3.1基准组织与用户

主要包括基准组织单元、用户、岗位三类对象,其详细的描述如下:

??用户

参与到本企业运营的所有人员,并且一人一账号。角色性质的用户(如:系统管理员)原则上不允许存在。

其数据分两部分:

A:被人资系统管理的人员数据(全民、集体、农电员工)

B:非人资系统管理的人员数据(临时员工、外来的临时人员)

??岗位

人力资源系统中的岗位。

??基准组织单元

形成企业主要的行政组织体系的组织单元。

3.2组织体系

主要由业务组织体系、业务组织单元以及业务组织性质构成,其详细的描述如下:

??业务组织体系

通常一个企业都会存在不同的业务模块或业务模型,比如:党务管理、工会管理、物资管理、生产管理,通常因为业务运转的需要业务模型会对应一套或多套于基准组织并不完全一至的组织体系。一套业务组织体系可以被多个业务应用系统共享。

??业务组织单元

业务组织体系中的组织单元,它的作用如下:

一:作为该组织下的业务组织角色拥有的功能权限在组织这个维度上的数据权限;

二:可以基于业务组织做权限的分级管理,从上图中可以看出业务组织角色是隶属于业务组织的,从而可以很方便的做到本单位或本部门的管理员管理本部门的人和权限,而不需要专门分配专业的权限管理人员

三:作为业务应用系统中业务数据之一使用;

四:在业务流程中可以以业务组织为基础定义出集团内部相对通用的参与者。

这四个作用依据业务应用系统的需要进行取舍,比如:可以把业务组织只当成业务数据之一来使用。

??业务组织单元性质

用于区分同一组织体系中不同组织单元的管理层次。如:单位、部门、班组等。

3.3角色体系

主要包括业务角色、业务组织角色、角色分组,其详细描述如下:

??业务角色

指要完成该业务应用系统的业务需要几种角色来完成,业务角色属于业务应用系统,它与业务组织没有关系。

??业务组织角色

业务组织角色是具体关联业务角色、业务组织机构、和人的对象,它会继承与之对应的业务角色上的功能权限,同时它也位于某个业务组织下,并且要在业务角色上分配人员。

??角色分组

用于对角色的分类管理。

3.4业务系统功能体系

主要包括功能、权限对象、业务系统、数据类型、数据集,其详细描述如下:

??功能

业务应用系统菜单树,每个菜单下有一组权限对象。

??权限对象

是一个系统下或一个功能下可进行权限控制的对象。例如:网页上的按钮、文本框等对象。

??业务系统

对应企业业务中的一个专业或者企业架构中的业务域。

??数据类型

用于描述一类用于权限控制的数据集合的定义。

??数据集

描述类数据集的权限控制规则结果定义。

3.5授权管理

统一权限管理系统包含四方面:基准组织与用户、业务组织体系、角色体系、业务应用系统功能体系。基准组织与用户主要包括:基准组织与用户的分配关系、用户与企业角色的分配关系及企业角色和基准组织之间关系;业务组织体系包含:组织体系和业务组织之间关系、业务组织和业务组织性质之间关系;角色体系主要包括:业务角色与组织角色派生关系、组织角色和业务组织之间分配关系;业务应用系统功能体系包含:业务应用系统和功能之间关系、功能和权限对象之间关联关系。

4结束语

本文在传统RBAC模型的基础上,根据企业级权限管理平台的使用需求,从横向、纵向上对RBAC中的元素进行了粒度细化,对RBAC模型进行了优化处理。通过实际需求调研,在统一权限管理系统运用了优化的RBAC模型,满足了企业级权限管理平台的权限控制管理的需求。

参考文献

[1]崔丽娜;郭振斌;龚巧明基于角色权限管理系统的设计与实现[D];中国科学院金属研究所;2011年

[2]周阳;郭顺生细粒度RBAC模型在ERP权限管理中的研究与应用[A];机械制造47卷第542期;2009年10期

[3]李漩;刘杰;吴岳辛一种细粒度下基于角色的访问控制模型[A];电信科学2008年第8期

[4]张晓韬;何义凯;尹长江国家电网公司统一权限管理系统概要设计v1.0