访问控制是为了限制访问主体对访问客体的访问权限,从而使计算机系统在合法范围内使用,访问控制机制决定用户及代表一定用户利益的程序能做什么,及做到什么程度。访问控制是信息安全保障机制的核心内容,是实现数据保密性和完整性机制的主要手段。
访问控制的两个重要过程
1、 通过鉴别来检验主体的合法身份
2、 通过授权来限制用户对资源的访问级别
访问控制可分为以下两种:
1、 强制访问控制(MAC):系统独立于用户行为强制执行访问控制,用户不能改变他们的安全级别或对象的安全属性,通常对数据和用户安全等级划分标签,访问控制机制通过比较安全标签来确定接受还是拒绝用户对资源的访问
2、 自主访问控制(DAC):允许对象的属主来制定针对该对象的保护策略,通常 DAC 通过授权列表来限定主体对客体可以执行什么操作。每个主体拥有一个用户名并属于一个组或具有一个角色,每个客体拥有一个限定主体对其访问权限的访问控制列表。
访问控制安全模型
1、 BLP 访问控制安全模型:基于强制访问控制系统,以敏感度来划分资源的安全级别,将数据和用户划分为公开、受限、秘密、机密、高密五个保密等级,主体不可读安全级别高于它的数据,不可写安全级别低于它的数据(可读) 。2、 Biba 完整性模型:基于强制访问控制系统,数据和用户被划分为公开、受限、秘密、机密、高密五个级别。主体不能读取安全级别低于它的数据(可写),不能写入安全级别高于它的数据(可读)。
BLP 模型为数据保密性提供保障,Biba 模型为数据完整性提供保障。
基于角色的访问控制(RBAC)
角色由应用系统的管理员定义,角色成员的增减只能由应用系统的管理员来执行,授权规定是强加给用户的,用户只能被动接受,不能自主决定,也不能自主地将访问权限传给他人。
RBAC 与 DAC 的区别是用户不能自主地将访问权限授给别的用户
RBAC 与 MAC 的区别是 MAC 基于多级安全需求,而 RBAC 主要关心保护信息的完整性。