14.1.2 访问控制技术
访问控制是指主体依据某些控制策略或权限对客体本身或是其资源进行的不同授权访问,包括3个要素,即主体、客体和控制策略。
·主体:是指一个提出请求或要求的实体,是动作的发起者,但不一定是动作的执行者。主体可以是一个计算机资源(物理设备、数据文件、内存或进程)或一个合法用户。
·客体:是接受其他实体访问的被动实体。凡是可以被操作的信息、资源、对象都可以认为是客体。客体可以是数据、文件、记录的集合体,甚至是网络上的硬件设备。
·控制策略:是主体对客体的操作行为集和约束条件集,即主体对客体的访问规则集,定义了主体可以实施的作用行为和客体对主体的条件约束,体现了一种授权行为。
1.访问控制模型
1985年美国军方提出可信计算机系统评估准则(TCSEC),其中描述了两种访问控制策略,分别为自主访问控制模型(DAC)和强制访问控制模型(MAC)。1992年,Ferraiolo和Kuhn又提出了基于角色的访问控制(RBAC),后来,又出现了基于任务和基于对象的访问控制模型。
(1)自主访问控制模型
自主访问控制模型(Discretionary Access Control Model,DAC Model)是根据自主访问控制策略建立的一种模型,允许合法用户以用户或用户组的身份访问策略规定的客体,同时阻止非授权用户访问客体,某些用户还可以自主地把自己所拥有的客体的访问权限授予其他用户。Linux、UNIX、Windows或是Server版本的操作系统都提供自主访问控制的功能。
在实现上,首先要对用户的身份进行鉴别,然后可以按照访问控制列表所赋予用户的权限允许和限制用户使用客体的资源。
(2)强制访问控制模型
强制访问控制模型(Mandatory Access Control Model,MAC Model)是一种比DAC更为严格的访问控制策略。和DAC模型不同,MAC是一种多级访问控制策略。
MAC通过分级的安全标签实现信息的单向流通,具体模型有:Bell-LaPadula模型和Biba模型。Bell-LaPadula模型具有只允许向下读、向上写的特点,可以有效地防止机密信息向下级泄露;Biba模型则具有不允许向下读、向上写的特点,可以有效地保护数据的完整性。
(3)基于角色的访问控制模型
基于角色的访问控制模型(Role-based Access Model,RBAC Model)的基本思想是将访问许可权分配给一定的角色,用户通过饰演不同的角色获得角色所拥有的访问许可权。
RBAC从控制主体的角度出发,根据管理中相对稳定的职权和责任来划分角色,将访问权限与角色相联系。角色成为访问控制中访问主体和受控对象之间的一座桥梁。
角色可以看做是一组操作的集合,不同的角色具有不同的操作集,这些操作集由系统管理员分配给角色。
(4)基于任务的访问控制模型
上述几个访问控制模型都是从系统的角度出发去保护资源,没有考虑执行的上下文环境,也不能记录主体对客体权限的使用,限制使用时间。如果为了完成一个任务而频繁变动角色,改变访问对象,使用这些模型就非常不便。因此,引入工作流概念和基于任务的访问控制模型(Task-based Access Control Model,TBAC Model)。工作流是为完成某一目标而由多个相关的任务(活动)构成的业务流程。当数据在工作流中流动时,执行操作的用户在改变,用户的权限也在改变。
TBAC从应用和企业层角度来解决安全问题,以面向任务的观点,从任务(活动)的角度来建立安全模型和实现安全机制,在任务处理的过程中提供动态实时的安全管理。
在TBAC中,对象的访问权限控制随着执行任务的上下文环境发生变化,不仅可以对不同工作流实行不同的访问控制策略,而且还能对同一工作流的不同任务实例实行不同的访问控制策略。从这个意义上说,TBAC是基于任务的,是一种基于实例(instance-based)的访问控制模型。
(5)基于对象的访问控制模型
当用户数量多、处理的信息数据量巨大时,用户权限的管理任务将变得十分繁重,应用DAC或MAC模型进行访问控制显然就不够了。如果采用RBAC模型,安全管理员除了维护用户和角色的关联关系外,还需要将庞大的信息资源访问权限赋予有限个角色。当信息资源的种类增加或减少,受控对象的属性发生变化,安全管理员必须随时更新所有角色的访问权限,增加新的角色。而访问控制需求变化往往是不可预知的,这样,访问控制管理的难度和工作量巨大。针对这种情况,引入了基于受控对象的访问控制模型(Object-based Access Control Model,OBAC Model)。
OBAC模型针对数据差异变化和用户需求变化,从受控对象的角度出发,将访问主体的访问权限直接与受控对象相关联,定义了对象的访问控制列表,增、删、修改访问控制项等,当受控对象的属性发生改变,或者受控对象发生继承和派生行为时,无需更新访问主体的权限,只需要修改受控对象的相应访问控制项即可,从而减少了访问主体的权限管理,降低了授权数据管理的复杂性。
2.访问控制策略制定的原则
按照ISO7 498-2中OSI安全体系结构中的定义,访问控制的安全策略有以下两种实现方式:基于身份的安全策略和基于规则的安全策略。目前使用的两种安全策略建立的基础都是授权行为。就其形式而言,基于身份的安全策略等同于DAC安全策略,基于规则的安全策略等同于MAC安全策略。
安全策略的制定实施围绕主体、客体和安全控制规则集三者之间的关系展开,遵循如下基本原则。
·最小特权原则:每一个用户或进程只应该拥有最小访问权集合,只在能完成其任务所必需的权限所组成的最小保护域内执行。
·经济性原则:控制机制应该最小和简单,便于实现、检査和证明。
·完全中介性:必须可以对系统发生的所有访问请求和主客体权限变化起到完全中介作用,监控不能被旁路。
·开放性原则:监控达到的安全作用不应该建立在设计方案的保密或攻击能力不足之上,密码系统的加密算法的公开性就是这一原则的体现。
·特权分离原则:对客体的访问应该取决于不止一个条件被满足,把访问某个客体的权力分解成多个子权力,分别由不同主体掌握,当子权力同时都满足时才能对客体访问。
·公共机制最小化:指多用户共享的最小化,以消除隐蔽信道,遏止非法获取信息。
·便利性原则:应该使用户使用便利。
3.访问控制的实现
实现访问的控制不仅要保证授权用户使用的权限与其所拥有的权限对应,有效制止非授权用户的非授权行为,还要阻止敏感信息的交叉感染。
访问控制主要包括接入访问控制、资源访问控制以及网络端口和节点的访问控制。
·接入访问控制:为网络访问提供了第一层访问控制,是网络访问的最先屏障,它控制用户登录到服务器,控制用户入网的时间和入网地点。接入访问控制是对合法用户的验证,通常使用用户名和口令的认证方式。一般包括用户名的识别与验证、用户口令的识别与验证和用户账号的默认限制检査三个步骤。
·资源访问控制:是对客体关于资源访问的控制管理,主要包括文件系统的访问控制、信息内容访问控制等。
·文件目录访问控制是关于用户和用户组对目录、子目录、文件和其他资源及其可能操作的控制。信息内容访问控制指用户合法阅读文件信息的控制,主要指文件解密等操作。
·网络端口和节点的访问控制:网络中的节点和端口往往加密传输数据,为了防止黑客攻击等非法行为。对于管理和修改数据,要求访问者提供足以证明身份的验证器。
·访问控制的实现,主要有访问控制矩阵、访问控制能力列表、访问控制安全标签列表等技术。
·访问控制表(Access Control List,ACL)是以文件为中心建立的访问权限表。目前,大多数PC、服务器和主机都使用ACLs作为访问控制的实现机制。
·访问控制矩阵(Access Control Matrix,ACM)通过矩阵形式表示访问控制规则和授权用户权限。
·访问控制能力列表(Access Control Capabilities List,ACCL)是以用户为中心建立的访问权限表,请求访问发起者拥有一个有效标签(ticket),表明持有者可以按照何种访问方式访问特定的客体。
·访问控制安全标签是限制和附属在主体或客体上的一组安全属性信息。安全标签的含义比能力更为广泛和严格,它建立了一个严格的安全等级集合。访问控制标签列表(Access Control Security LabelsList,ACSLL)是限定一个用户对一个客体目标访问的安全属性集合。
共有条评论 网友评论