基于角色的访问控制系统

  • 格式:pdf
  • 大小:117.06 KB
  • 文档页数:6

下载文档原格式

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

基于角色的访问控制系统

Role-Based Access Con trol System

北京航空航天大学计算机系(北京100083) 李伟琴 杨亚平

【摘要】 主要介绍基于角色的访问控制(RBA C),其中包括特点、优势等,并对其设计考虑以及如何具体实现作了阐述。

关键词:访问控制,计算机网络,计算机安全

【Abstract】 Ro le-based access con tro l (RBA C)techno logy is p resen ted,including the featu res,advan tage,design schem e and sp ecific realizing m ethods.

Key words:access con trol,co m puter net-work,co m puter safety

近年来,随着全球网络化的热潮,网络技术正在日益广泛而深入地被应用到社会的各个领域中,并深刻地改变着社会的行为和面貌。然而,与此同时,网络安全却成为困扰和阻挠网络技术进一步普及、应用的绊脚石。尤其在商业、金融和国防等领域的网络应用中,能否保证网络具有足够的安全性是首先要考虑的问题。安全问题如果不能有效地得到解决,必然会影响整个网络的发展。

为此,国际标准化组织ISO在网络安全体系的设计标准(ISO7498-2)中,提出了层次型的安全体系结构,并定义了五大安全服务功能:身份认证服务,访问控制服务,数据保密服务,数据完整性服务,不可否认服务。一个可靠的网络,它的可信任程度依赖于所提供的安全服务质量。

1 访问控制研究的定义、内容和范围

访问控制(access con tro l)就是通过某种途径显式地准许或限制访问能力及范围的一种方法。通过访问控制服务,可以限制对关键资源的访问,防止非法用户的侵入或者因合法用户的不慎操作所造成的破坏。

访问控制系统一般包括:

1)主体(sub ject):发出访问操作、存取要求的主动方,通常指用户或用户的某个进程;

2)客体(ob ject):被调用的程序或欲存取的数据访问;

3)安全访问政策:一套规则,用以确定一个主体是否对客体拥有访问能力。

2 传统的访问控制技术

2.1 自主型的访问控制DAC

DA C是目前计算机系统中实现最多的访问控制机制,它是在确认主体身份以及(或)它们所属组的基础上对访问进行限定的一种方法。其基本思想是:允许某个主体显式地指定其他主体对该主体所拥有的信息资源是否可以访问以及可执行的访问类型。我们所熟悉的U N I X系统就是采用了自主型的访问控制技术。

2.2 强制型的访问控制M AC

强制型的访问控制是“强加”给访问主体的,即系统强制主体服从访问控制政策。它预先定义主体的可信任级别及客体(信息)的敏感程度(安全级别)。用户的访问必须遵守安全政策划分的安全级别的设定以及有关访问权限的设定。这种访问控制方式主要适合于多层次安全级别的军事应用。

3 基于角色的访问控制技术

随着网络的迅速发展,尤其是In tranet的兴起,对访问控制服务的质量也提出了更高的要求,以上两种访问控制技术已很难满足这些要求。DA C 将赋予或取消访问权限的一部分权力留给用户个人,这使得管理员难以确定哪些用户对哪些资源有访问权限,不利于实现统一的全局访问控制。而M A C由于过于偏重保密性,对其他方面如系统连续工作能力、授权的可管理性等考虑不足。90年代以来出现的一种基于角色的访问控制RBA C(Ro le -B ased A ccess Con tro l)技术有效地克服了传统

6

1

访问控制技术中存在的不足之处,可以减少授权管理的复杂性,降低管理开销,而且还能为管理员提供一个比较好的实现安全政策的环境。

在RBA C 中,引入了角色这一重要概念。所谓“角色”,就是一个或一群用户在组织内可执行的操作的集合。RBA C 的基本思想是:授权给用户的访问权限,通常由用户在一个组织中担当的角色来确定。例如,一个银行包含的角色可以有出纳员、会计师和贷款员等。由于他们的职能不同,所拥有的访问权限显然也各不相同。RBA C 根据用户在组织内所处的角色进行访问授权与控制。也就是说,传统的访问控制直接将访问主体(发出访问操作、存取要求的主动方)和客体(被调用的程序或欲存取的数据访问)相联系,而RBA C 在中间加入了角色,通过角色沟通主体与客体。在RBA C 中,用户标识对于身份认证以及审计记录是十分有用的,但真正决定访问权限的是用户对应的角色标识。

RBA

C 对访问权限的授权由管理员统一管理,

而且授权规定是强加给用户的,用户只能被动接受,不能自主地决定。用户也不能自主地将访问权限传给他人。这是一种非自主型访问控制。

RBA C 中,主体、

客体、角色、操作、用户之间的关系如图1所示,其中双箭头表示多对多关系。

图1 RBA C 中各元素相互关系示意图3.1 RBAC 的特点

3.1.1 以角色作为访问控制的主体

用户以什么样的角色对资源进行访问,决定了用户拥有的权限以及可执行何种操作。3.1.2 角色继承

为了提高效率,避免相同权限的重复设置,

RBA C 采用了

“角色继承”的概念,定义了这样的一些角色,它们有自己的属性,但可能还继承其他角色的属性和权限。角色继承把角色组织起来,

能够很自然地反映组织内部人员之间的职权、责任关系。

角色继承可以用祖先关系来表示。如图2所示,角色2是角色1的“父亲”,它包含角色1的属性与权限。在角色继承关系图中,处于最上面的角色拥有最大的访问权限,越下端的角色拥有的权限越小。3.1.3 最小权限原则

图2 角色继承

所谓最小权限原则是指:用户所拥有的权力不能超过他执行工作时所需的权限。实现最小权限原则,需分清用户的工作内容,确定执行该项工作的最小权限集,然后将用户限制在这些权限范围之内。在RBA C 中,可以根据组织内的规章制度、职员的分工等设计拥有不同权限的角色,只有角色需要执行的操作才授权给角色。当一个主体预访问某资源时,如果该操作不在主体当前活跃角色的授权操作之内,该访问将被拒绝。3.1.4 职责分离

对于某些特定的操作集,某一个角色或用户不

可能同时独立地完成所有这些操作。“职责分离”可以有静态和动态两种实现方式。

静态职责分离:只有当一个角色与用户所属的其他角色彼此不互斥时,这个角色才能授权给该用户。

动态职责分离:只有当一个角色与一主体的任何一个当前活跃角色都不互斥时,该角色才能成为该主体的另一个活跃角色。3.1.5 角色容量

在创建新的角色时,要指定角色的容量。在一个特定的时间段内,有一些角色只能由一定人数的用户占用。

3.2 RBAC 的优势

RBA C 的最大优势在于它对授权管理的支持。通常的访问控制实现方法,将用户与访问权限直接相联系,当组织内人员新增或有人离开时,或者某个用户的职能发生变化时,需要进行大量授权更改工作。而在RBA C 中,角色作为一个桥梁,沟通于用户和资源之间。对用户的访问授权转变为对角色的授权,然后再将用户与特定的角色联系起来。一旦一个RBA C 系统建立起来以后,主要的管理工作即为授权或取消用户的角色,如图3所示。

71・