自主访问控制综述

上传人:大米 文档编号:512210746 上传时间:2023-02-10 格式:DOCX 页数:7 大小:36.92KB
返回 下载 相关 举报
自主访问控制综述_第1页
第1页 / 共7页
自主访问控制综述_第2页
第2页 / 共7页
自主访问控制综述_第3页
第3页 / 共7页
自主访问控制综述_第4页
第4页 / 共7页
自主访问控制综述_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《自主访问控制综述》由会员分享,可在线阅读,更多相关《自主访问控制综述(7页珍藏版)》请在金锄头文库上搜索。

1、自主访问控制综述摘要:访问控制是安全操作系统必备的功能之一,它的作用主要是决定谁能够访 问系统,能访问系统的何种资源以及如何使用这些资源。而自主访问控制 (Discretionary Access Control, DAC )则是最早的访问控制策略之一,至今已发 展出多种改进的访问控制策略。本文首先从一般访问控制技术入手,介绍访问控 制的基本要素和模型,以及自主访问控制的主要过程;然后介绍了包括传统 DAC 策略在内的多种自主访问控制策略;接下来列举了四种自主访问控制的实现技术 和他们的优劣之处;最后对自主访问控制的现状进行总结并简略介绍其发展趋 势。1 自主访问控制基本概念访问控制是指控制系

2、统中主体(例如进程)对客体(例如文件目录等)的访 问(例如读、写和执行等)。自主访问控制中主体对客体的访问权限是由客体的 属主决定的,也就是说系统允许主体(客体的拥有者)可以按照自己的意愿去制 定谁以何种访问模式去访问该客体。1.1 访问控制基本要素访问控制由最基本的三要素组成:主体(Subject):可以对其他实体施加动作的主动实体,如用户、进程、 I/O 设备等。客体(Object):接受其他实体访问的被动实体,如文件、共享内存、管 道等。控制策略(Control Strategy):主体对客体的操作行为集和约束条件集, 如访问矩阵、访问控制表等。1.2 访问控制基本模型自从1969年,B

3、. W. Lampson通过形式化表示方法运用主体、客体和访问矩 阵(Access Matrix)的思想第一次对访问控制问题进行了抽象,经过多年的扩充和 改造,现在已有多种访问控制模型及其变种。本文介绍的是访问控制研究中的两 个基本理论模型:一是引用监控器,这是安全操作系统的基本模型,进而介绍了 访问控制在安全操作系统中的地位及其与其他安全技术的关系;二是访问矩阵, 这是访问控制技术最基本的抽象模型。1.2.1引用监控器1972年,作为承担美国军的一项计算机安全规划研究任务的研究成果,J. P. Anderson在一份研究报告中首次提出了用监控器(RefEwncE Monitor)、安全内 核

4、(Security Kernel)等重要思想。同年Ronger Schell也提出了安全内核的概念, 并定义为实现引用监控器抽象的硬件和软件。在著名的计算机安全评价标准 TCSEC 中,引用监控器被作为重要的理论基础。图 1 引用监控器模型如图1 所示,安全操作系统的核心部分是安全内核,安全内核的基础是引用 监控器,它是负责实施系统安全策略的硬件与软件的结合体。访问控制依赖引用 监控器进行主体对客体访问的控制,以决定主体是否有权对客体进行何种操作。 引用监控器查询授权数据库(Authorization Database),根据系统安全策略进行访 问控制的判断,同时将相应活动记录在审计数据库(A

5、udit Database)中。由引用监控器模型可以看出,访问控制是实现安全操作系统的最核心的技术,但它并不是孤立的,它必须和其他安全技术相互配合以达到整个系统的安全。1.2.2 访问矩阵访问矩阵是最基本的访问控制抽象模型,最初由B. W. Lampson在1969年对 访问控制问题的研究中作为一种基本控制策略提出。主体是访问操作中的主动实 体,客体是访问操作中的被动实体,主体对客体进行访问,系统使用引用监控器 根据访问矩阵来进行访问控制。Object 1Object 2Object jSubject 1read, writeown, read, writereadSubject 2readw

6、riteown, read, writeSubject iown, read, writereadread, write图 2 访问矩阵模型如图2所示,访问矩阵是以主体为行索引、以客体为列索引的矩阵,矩阵中 的每一个元素表示一组访问方式,是若干访问方式的集合。矩阵中第i行第J列 的元素记录第i个主体Si可以执行的对第J个客体q的访问方式,比如叫等于表示si可以对Oj进行读和写访问。1.3自主访问控制的主要特点自主访问控制是一种最普遍的访问控制安全策略,其最早出现在 20世纪 70 年代初期的分时系统中,基本思想伴随着访问矩阵被提出,在在目前流行的Unix 类操作系统中被广泛使用。自主访问控制基

7、于对主体的识别来限制对客体的访 问,这种控制是自主的。与其他访问控制策略最大的区别在于,自主访问控制中 部分具有对其他主体授予某种访问权限权利的主体可以自主地(可以是间接地) 将访问权限或访问权限的子集授予其他主体。在自主访问控制中具有这种授予权 力的主体通常是客体的主人,因此有学者把自主访问控制称为基于主人的访问控 制。2 自主访问控制策略自主访问控制策略作为最早被提出的访问控制策略之一,至今已有多种改进 的访问控制策略。下面列举传统DAC策略和几种由DAC发展而来的访问控制 策略。2.1传统DAC策略传统 DAC 策略的基本过程已在上文中介绍过,可以看出,访问权限的管理 依赖于所有对客体具

8、有访问权限的主体。明显的,自主访问控制主要存在着以下 三点不足: 资源管理比较分散 用户间的关系不能在系统中体现出来,不易管理 不能对系统中的信息流进行保护,容易泄露,无法抵御特洛伊木马其中,第三点的不足对安全管理来说是非常不安全的,针对自主访问控制的 不足,许多研究者对其提出了一系列的改进措施。2.2 HRU、TAM、ATAM 策略早在70年代末,M. A. Harrison,W. L. Ruzzo和J. D. Ullman就对自主访问 控制进行扩充,提出了客体主人自主管理该客体的访问和安全管理员限制访问权 限随意扩散相结合的半自主式的HRU访问控制模型。1992 年, Sandhu等人为

9、了表示主体需要拥有的访问权限,将 HRU 模型发展为 TAM(Typed Access Matrix)模型。随后,为了描述访问权限需要动态变化的系统安全策略,TAM发 展为 ATAM (Augmented TAM)模型。HRU与传统DAC最大的不同在于它将访问权限的授予改为半自主式:主体 仍然有权利将其具有的访问权限授予给其他客体,这种授予行为也要受到一个调 整访问权限分配的安全策略的限制,通常这个安全策略由安全管理员来制定。在 HRU 中,每次对访问矩阵进行改变时(包括对主体、客体以及权限的改 变),先生成一个临时的结果,然后用调整访问权限分配的安全策略来对这个临 时结果进行判断。如果这个结

10、果符合此安全策略,才允许此次访问权限的授予。可以说,HRU模型用得好的话,可以完全不用担心非授权者会“意外”获 得某个不应获得的访问权限。但这种设定当主体集和客体集发生改变时,需要依 赖安全管理员对访问权限的扩散策略进行更新。TAM 策略对此作出了改进:每当产生新主体时,管理员就需要对新主体的 访问权限和它本身所拥有权限的扩散范围进行限定;每当产生新客体时,其所属 主体和管理员就需要对其每一种权限的扩散范围进行限定。这样一来,只要前期 系统架构合理,TAM就能极为方便的控制住访问权限的扩散范围。ATAM策略则是在TAM策略的基础上,为了描述访问权限需要动态变化的 系统安全策略而发展出来的安全策

11、略。2.3基于角色/时间特性的DAC策略2000 年 Sylvia Osbom 等人提出使用基于角色的访问控制来模拟自主访问控 制,讨论了提出使用基于角色的访问控制来模拟自主访问控制,讨论了角色和自 主访问控制结合方法,针对三种DAC类型,设计了文件管理角色和正规角色。 管理角色根据 DAC 类型不 同, 可包括 OWN_O , PARENT_O 和 PARENTwithGRANT_O。正规角色根据访问方式不同,可包括READ_O、WRITE_O 和 EXECUTE_O 角色。 OWN_O 角色有权向 PARENT_O 添加或删除 用户, PARENTwithGRANT_O 角色有权向 PAR

12、ENT_O 添加或删除用户。 PARENT_O 有权向 READ_O、 WRITE_O 或者 EXECUTE_O 添加或删除用户。 正规角色中用户具有相应得读、写或执行的权限。对应严格的DAC,管理角色只有OWN_0,正规角色可以包括READ_0、 WRITE_0和EXECUTE.0,分别表示有权读、写或执行的用户集。而在许多基于时间特性的 DAC 策略中,时间点和时间区间的概念被引入到 DAC 中并与访问权限结合,使得访问权限具有时间特性。换句话说,用户只能 在某个时间点或者时间区间内对客体进行访问。该方法使主体可以自主地决定其 他哪些主体可以在哪个时间访问他所拥有的客体,实现了更细粒度的控

13、制。在一些客体对访问许可有严格时间要求的系统中,如军事信息、情报、新闻 等,基于时间特性的 DAC 策略就比较适合。当然为了更加严格的控制信息流的 传递,通常此策略也会和其他访问控制策略相结合。除了最为知名的基于角色/时间特性的DAC策略,还有许多种基于某些因素 的访问控制策略,在此就不一一列举了。3 自主访问控制实现技术实现自主访问控制实际上就是要把访问矩阵中的信息保存在系统中。因为在 大型系统中访问矩阵很大而且其中会有很多空值,如果以矩阵的形式将其保存会 严重浪费资源,所以目前使用的实现技术都不会保存整个访问矩阵。下面是基于 访问矩阵的行或者列来保存信息:3.1 保护位(Owner/Gro

14、up/Ot her)机制在此机制中,每个操作系统客体都附有一个位集合以便为不同安全类别的用 户指定不同访问模式。常见的实现中其类别包括Owner、Group、Other三类,保 护位分别指定这三类用户的读、写、执行权限。由于保护位与客体相关联,显然 它可决定哪些用户对客体拥有自主访问权限和在需要时撤消权限,访问权的复制 和扩展的可简单地通过将此客体的保护位的修改权限授予某些用户来实现。在B3级别,DAC要求增强了,包括利用系统能力表指定各自的访问模式和 不能进行访问来实现命名的个体和定义的个体组对命名客体实现共享的控制。保 护位机制限于指定一个单一组对于一个客体的一组权限,但这种机制只能为此单

15、 一组指定单一的一组权限,权限划分的粒度过粗,所以它不能在同一时间为个体 和定义的个体组指定受控制的共享,不能满足B3级别DAC的要求。但由于它 的设计简单、高效,像Unix等当今流行的操作系统许多都采用了这种机制。3.2 能力表(Capabilities)机制能力表机制将每一个操作系统的主体与一个客体访问列表(能力表)相联系, 它指定了主体可以访问的客体以及此主体对此客体相应的访问方式。由于能力表 与主体相关联,故在一个特定时刻判断哪些主体对一个特定客体具有访问权限比 较困难。这使得访问权限的撤消变得复杂。典型的是:一个用户可以通过提供一 个必需的能力表的拷贝将访问权限授予其它用户,结果是访

16、问权限的扩展过于复 杂而难以控制。能力表机制提供了一种在运行期间实行访问控制的方式(例如, 它在DBMS中可能发挥作用:只要能够检索用户/主体模版以判断对一个表的特 定视图是否具有访问权限)。然而,这一方法对每个用户都需要很多的项来实现 这种检索。它可以满足B3级别的要求。3.3 访问控制表(Access Control Lists, ACLs)访问控制表是目前最流行、使用最多的访问控制实现技术。每个客体有一个 访问控制表,是系统中每一个有权访问这个客体的书体的信息。这种实现技术实 际上是按列保存访问矩阵。访问控制表提供了针对客体的方便的查询方法,通过查询一个客体的访问控 制表很容易决定某一个主体对该客体的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号