APP下载

基于安全域的信息系统访问控制模型研究

2010-09-07

中国新技术新产品 2010年1期
关键词:表单访问控制信息系统

孔 震 毕 岚

(1、国网电力科学研究院信息技术研究所,江苏 南京 210003 2、南京邮电大学理学院,江苏 南京 21003)

1 引言

随着企业信息化程度的不断提高,越来越多的关键性数据和业务被纳入企业信息系统进行管理。为能有效控制不同用户对不同数据和业务的处理权限,从而界定用户职责、划分工作范围,增强信息系统的安全性及协同工作效率,信息系统必须具有完备、灵活的权限控制方法。本文主要论述了一种基于安全域的、高复用性的信息系统访问权限控制策略,以及其在企业信息系统中的典型应用方案。

2 基于角色的访问控制模型

基于RBAC 模型进行信息系统安全访问控制是目前业界信息系统的常见实现方法。RBAC 模型中的核心概念包括访问权限(Privilige)、角色(Role)和用户(User)。访问权限是对信息系统中某种业务数据或操作的执行权限的概括性描述,其本身并不直接体现哪些用户可以拥有该权限。访问权限的常见命名方式有两种:一、名词结构,以“权”作为名称结尾,如“请假单审批权”;二、动宾结构,如“审批请假单”。上述两种方式均表示一种具有审批请假单的业务权限。角色是对信息系统中一组访问权限集合的抽象描述,一个角色可以包含一个或多个访问权限。角色均以名词命名,并通常与岗位名称相同,如“部门经理”。用户是对信息系统操作人员的一种表述形式,即通常所说的系统帐号,其命名只需遵循唯一性原则即可。

在基于RBAC 模型构建的信息系统中,用户、角色和访问权限间的关系如图表1 所示。角色与用户间存在多对多关系,即一个角色可以包含多个用户,且一个用户可以拥有多个角色;访问权限不直接与用户绑定,而是与角色进行绑定,即用户是通过角色间接与访问权限建立关联。当用户登录信息系统时,用户拥有的角色集合已被事先定义,在其访问指定数据或业务前,信息系统会判定该用户拥有的角色集合中是否有角色具备当前数据或业务所需要的访问权限,若具备则允许用户访问,否则则禁止。比如,用户张三拥有部门经理角色,而部门经理角色关联了请假单审批权,因此,张三有权进行请假单审批。

图表1 RBAC 模型中用户、角色和访问权限间的UML 对象关系图

3 基于安全域的访问控制模型

3.1 基于RBAC 的访问控制模型的优缺点分析

基于RBAC 模型的访问权限控制模型实现了用户与访问权限的逻辑分离,极大的方便了权限管理。例如,一个用户的岗位发生变化,其处理数据和业务的访问权限也随之发生变化,此时,只要将该用户原先岗位关联的角色去除,并关联新岗位所对应的角色,即可实现访问权限的变更。若某岗位的访问权限发生变化,需要该岗位的用户不仅有权处理表单A,还增加了对表单B 和表单C 的访问权限。在用户直接关联访问权限的方式下,该岗位所有有权处理表单A 的用户(假设为N 个)均需增加对表单B和表单C 的处理权限,修改权限策略数量为2*N;而在角色关联访问权限的方式下,通常只需将岗位中有权处理表单A 的唯一角色与表单B 和表单C 的访问权限关联即可,修改权限策略数量为2。综上所述,基于RBAC 模型进行权限管理,比直接基于用户进行权限管理要便捷很多。深入分析RBAC 模型可以发现,RBAC 中的访问控制(Privilige)包含了操作对象和操作方式两种元素,如前文所述的“请假单审批权”是由“请假单”和“审批”组成,“请假单”即操作对象,“审批”即操作方式。一种操作对象可对应多种操作方式,如“请假单”除“审批”外,还可能有“申请”、“归档”等操作方式;而一种操作方式又可对应多种操作对象,如“审批”除针对“请假单”外,还可能针对“报销单”、“采购单”等操作对象。针对上述情况,基于RBAC 模型进行角色授权时,势必要将角色与各种可能的操作对象和操作方式组合而成的访问权限进行关联。假设操作对象的数量是M,操作方式的数量是N,则针对角色进行访问控制授权的策略数量为M*N,当M、N 较大时,基于角色的访问权限管理工作的复杂度将显著增加。

3.2 基于安全域的访问控制模型

上述问题的根本原因在于RBAC 模型未能细分访问权限中的操作对象和操作方式。从易变性角度分析,信息系统中的操作对象会随着业务规模的变化而频繁变化,且数量较大,从100 至10000 不等,甚至更多;而操作方式较为稳定,常见的有增、删、改、查、归档等,数量有限,且能在不同操作对象间复用。针对此分析结果,本文提出一种新的基于安全域的访问控制模型。基于安全域的访问控制模型是RBAC 模型的衍生,其核心是将操作对象和操作方式分离,并通过操作对象和安全域之间的关联关系表达权限控制策略。其间关系如图表2 所示。

图表2 基于安全域的访问控制模型的UML 对象关系图

安全域由一系列角色和操作方式组成,例如,“部门级表单管理”安全域的内容如下表所示:

图表3“部门级表单管理”安全域内容

由上表可见,安全域并非完整的访问控制策略的定义结果,只有当其与具体操作对象建立关联后方能生效。如将“请假单”与上述“部门级表单管理”安全域进行关联,则表示“部门经理”和“部门副经理”角色对“请假单”有“增加、删除、编辑、读取”权限。当操作对象范围发生变化时,如需要部门扩充管理“采购单”、“报销单”,则只需将“采购单”、“报销单”和“部门级表单管理”安全域进行关联,而按常规的RBAC 模型进行管理时,需要分别针对“部门经理”、“部门副经理”与“采购单”、“报销单”及“增加、删除、编辑、读取”增加2*2*4=16 条权限控制策略;当某角色的操作方式发生变化时,如取消“部门副经理”的“增加、删除、编辑”操作方式,则只需单点更改“部门级表单管理”安全域中的3 条记录,与之关联的“请假单”、“采购单”、“报销单”均能自动生效,而基于RBAC 模型进行管理时,则需删除“部门副经理”与“请假单”、“采购单”、“报销单”及“增加、删除、编辑”相关的3*3=9 条权限控制策略。

4 结论

综上所述,基于安全域的访问控制模型在继承了RBAC 模型通过角色简化权限访问控制过程的方法基础上,进一步细分操作对象和操作方式,将角色和操作方式封装为安全域,增强了不同操作对象间的权限控制策略的复用性,进而大大简化权限控制策略的维护过程。

[1]李孟珂,基于角色的访问控制技术及应用,计算机应用研究,2000年第17 卷第10 期

[2]乔颖,一种基于角色访问控制(RBAC)的新模型及其实现机制,计算机研究与发展 ,2000,1.

[3]李细雨,基于粒逻辑的扩展RBAC 模型,浙江师范大学学报:自然科学版,2009年第32 卷第3 期

[4]李金双,HARBAC:基于分级管理思想的RBAC 层级管理模型,小型微型计算机系统.

猜你喜欢

表单访问控制信息系统
企业信息系统安全防护
电子表单系统应用分析
基于区块链的通航维护信息系统研究
浅谈网页制作中表单的教学
信息系统审计中计算机审计的应用
ONVIF的全新主张:一致性及最访问控制的Profile A
动态自适应访问控制模型
浅析云计算环境下等级保护访问控制测评技术
基于SG-I6000的信息系统运检自动化诊断实践
大数据平台访问控制方法的设计与实现