一、访问控制的概述
1.概念
访问控制(Access Control)是指在鉴别用户的合法身份后,通过某种途径准许或限制用户对数据信息的访问能力及范围,阻止未经授权的资源访问,包括阻止以未经授权的方式使用资源。其主要目的是保护系统中的敏感信息和资源,防止未经授权的访问和操作,确保系统的安全性、完整性和可靠性。
2.要素
访问控制包含三个基本要素:主体、客体和访问策略。
(1)主体
1)定义:主体是指一个发出请求或要求的实体。
2)实例:主体可以是某个用户,也可以是用户启动的进程、服务或设备。
(2)客体
1)定义:客体是接受其他实体访问的被动实体。
2)示例:凡是可以被操作的信息、资源、对象都可以被看作客体,如文件、数据库记录、网络设备等。
(3)访问策略
1)定义:控制策略是主体对客体的访问规则集,限制主体对客体的访问权限。
2)示例:这些规则可能基于用户的身份、角色、权限级别或其他安全属性来制定。
3.实现机制
实现访问控制的关键是设计合理的访问控制策略和机制,包括身份认证、授权管理、访问控制列表等:
(1)身份认证:
方法:通过用户名和密码、生物识别等多种方式实现,确保用户身份的真实性和可信度。
(2)授权管理:
方法:根据用户的角色和职责来分配相应的访问权限,避免权限滥用和误操作。
(3)访问控制列表(ACL):
定义:记录了每个资源的访问权限信息,用于控制用户对资源的访问行为。
二、访问控制
1.访问控制分类
2.访问控制
1)自主访问控制(DAC):自主访问控制方式是一种基于用户的访问控制方式,在自主访问控制方式中,用户可以自行控制对自己拥有的资源的访问权限,自主访问控制一般用于对安全性要求比较低的系统,如:个人电脑、家庭网络等领域;
2)强制访问控制(MAC):强制访问控制方式是一种基于安全级别的访问控制方式,在强制访问控制方式中,数据的访问权限是由系统管理员定义的,用户无法更改。强制访问控制技术通常用于对安全要求非常高的系统,如:军事、政府等领域。
3)基于角色的访问控制(RBAC): 基于角色的访问控制是一种基于角色的访问控制方式。在基于角色的访问控制方式中,用户被分配到不同的角色,每个角色对应着一组访问权限,用户的访问权限是由角色定义的,用户只需要拥有相应的角色便可访问不同的资源。角色访问控制常用于用户和资源数量较多的系统,如企业网络、电商平台等领域。
4)基于属性的访问控制(ABAC): 基于属性的访问控制是一种基于属性的访问控制方式。在基于属性的访问控制方式中,用户的访问权限是根据用户的属性、资源的属性、环境的属性等多个因素来确定的。基于属性的访问控制方式常用于对安全性要求较高的系统,如金融、医疗等领域。
5)基于规则的访问控制(RuBAC): RuBAC 通过管理员设定的程序化条件来决定对象的访问权限。与某些模型不同,RuBAC 不仅考虑主体和对象,还将其行为纳入考虑,类似于编程中的 if-then 语句。它可以容纳多个条件和变量来做出访问决策。对于需要基于时间或位置限制访问的组织来说,RuBAC 可能更加有效,但修改程序化条件需要时间和编码专业知识。
6)细粒度访问控制:细粒度访问控制是一种基于数据的访问控制方式,在细粒度访问控制方式中,对于每个数据资源,都可以定义精细化的访问控制规则,以确保数据的安全性和保密性。细粒度访问控制通常用于对数据安全要求非常高的系统,如:金融、医疗等领域。