什么是访问控制
为用户对系统资源提供最大限度共享的基础上,对用户的访问权进行管理,防止对信息的非授权篡改和滥用
什么是访问控制模型
对一系列访问控制规则集合的描述,可以是非形式化的,也可以是形式化的。
访问控制的核心要素
访问控制模型基于三个基本元素:主体(Subject)、客体(Object)和访问权限(Access Rights)。主体通常指请求访问资源的用户或程序,客体则是被访问的资源,如文件、数据库或系统资源等。访问权限定义了主体对客体的操作权限,例如读取、写入或执行等。
访问控制模型主要分为三类:自主访问控制(DAC)、强制访问控制(MAC)和基于角色的访问控制(RBAC)。每种模型都有其独特的特点和应用场景,而选择合适的模型则取决于组织的具体需求和安全策略
自主访问控制模型(DAC)
DAC的实现机制: 通过访问控制表/矩阵实现
简而言之,通过管理员赋予不同用户对不同目标的读,写,所属权限来实现权限管理。
用户 / 目标 | 目标a | 目标b | 目标c | 目标d |
---|---|---|---|---|
用户a | R, W, Own | |||
用户b | R, W, Own | R, W, Own | ||
用户c | R | R, W | R | R |
用户d | R | R, W | R | R |
基于对象的控制:ACL是依附于每个对象(如文件或目录)的(或者称之为客体)。每个对象都有一个列表,指定了哪些用户(或用户组)可以访问该对象,以及他们拥有的权限类型(如读、写、执行)。
集中化管理:由于每个对象都有一个控制访问权限的中心列表,因此权限管理是集中化的。管理员可以在一个地方查看或修改特定资源的访问权限。
查找效率:当一个对象被访问时,系统必须搜索与该对象相关联的ACL,以确定是否允许请求的操作。对于访问请求量大的系统,这可能会变成性能瓶颈。
基于用户的控制:与ACL不同,访问能力列表是基于用户的。每个用户都有一个列表,详细列出了他们可以访问的所有对象及其相应的权限。
分散管理:访问权限信息分散在每个用户的能力列表中。每个用户的列表指定了他们可以访问的资源和权限级别。
查找效率:当用户尝试访问一个对象时,系统只需要检查该用户的能力列表。系统不需要在每次访问尝试时搜索每个对象的ACL。
关于有点如上所示很面贡献了。灵活性高能够自主授权。那么主要的缺点包括
定义:主体和客体都有一个固定的安全属性,系统用该安全属性来决定一个主体是否可以访问某个客体
特点
由D. Elliott Bell和Leonard J. LaPadula于1973年提出的一种模拟军事安全策略的计算机访问控制模型,取两个创始人的姓氏中的字母来命令,简称为BLP模型。 BLP的访问控制策略
安全级别包括密级和范畴
简单安全规则
*-规则
Biba通过多级访问控制模型,保护数据完整性。
通过强制安全策略为每一个主体和客体都分配了完整级,根据完整级进行访问控制。
完整级: 包括安全级和范畴
完整级之间与BLP类型,存在支配关系。
密级高于或等于, 范畴包含。
Chinesw Wall模型也就是我们常说的“墙”, 所以,墙的本质就是通过我们独有的访问控制模型来实现的。随着它的诞生,也成为了世界各个高校在讲授访问控制模型时不得不提的经典案例。
Chinese Wall 模型创建了一种动态的访问控制策略,该策略根据用户的访问历史进行调整。它的设计目的是防止利益冲突,确保一旦客体(或任何专业人士)访问了一家公司的机密信息,他们就不能访问竞争对手的机密信息。
例如
围绕三个主要概念构建:对象、主体和数据集。
对象(公司数据集): 这些是不同公司的数据集。一旦主体访问了一家公司的数据集,他们就被禁止访问竞争公司的数据集。
主体: 这些是试图访问数据集的用户或实体。他们的访问权限根据他们的访问历史动态调整。
利益冲突类: 包括直接竞争公司的群组。一个主体访问了该类别中一家公司的数据后,就不能访问同一类别中的竞争公司的数据。
Chinese Wall 模型执行以下规则:
读取访问: 主体可以读取一个对象,当且仅当:
写入访问: 写入通常受到更多限制,以确保不会在竞争对手之间发生数据的交叉污染。
基于角色的访问控制(Role-Based Access Control,简称RBAC)是一种广泛应用的访问控制机制,主要通过分配角色和权限来管理用户对系统资源的访问。这种方法减少了直接将权限分配给用户的复杂性,而是通过角色来间接管理权限。
RBAC 模型基于几个关键概念:
RBAC 有几种不同的实现方式:
RBAC 模型的主要优势包括:
RBAC 是一种有效的权限管理方式,特别适用于权限需求复杂和频繁变化的大型组织或系统。