1经典访问控制策略
1.1自主访问控制
允许用户自己对客体将已有的权限赋予给其他主体,也可以撤销自己赋予给其他主体的权限。
矩阵结构分为三个主要的表:
访问控制矩阵
访问控制列表
权能表
矩阵的局限性:
大小为主体数量×客体数量,容易造成空间浪费
搜索权限效率低
扩展性差
优化办法or解决办法:
按行和列进行矩阵拆分
将同类用户分为一个用户组
1.2强制访问控制
1.2课后习题
1.2.1访问控制矩阵
为了保证数据安全,系统管理员可对不同的文件针对不同的用户/用户组设置不同的权限。现假设系统中的不同用户/组对不同文件的权限如下矩阵。请据此回答问题。
请结合上述矩阵,指出主体和客体在这里分别指什么。
采用访问控制矩阵进行权限管理,当文件、用户数量较多时,存在什么问题?针对2中的问题,采用不少于2种方式改进本题中的访问控制矩阵,并画出改进后的访问控制矩阵。
Q1:矩阵中的主体和个体:
主体:root、user1、user2、user3
客体有:file1、file2、file3、file4
Q2:访问控制矩阵进行权限管理的局限性:大小为主体数量×客体数量,容易造成空间浪费
搜索权限效率低
扩展性差
Q3:在用户、文件数量越来越多时,访问控制列表(ACLs)、基于角色的访问控制(RBAC)是更好的权限管理方法。
访问控制列表(ACLs)是一种将资源(如文件、目录或网络对象)和用户权限之间的关系存储在列表中的方法。它为每个资源分配了一个列表,其中包含了所有被授权访问该资源的用户和他们的权限。这样,管理员只需要针对每个资源设置权限,而无需在整个系统中进行权限分配。这可以减少权限管理的复杂度,并提高安全性。
一个用户对多个文件——>全能表;一个文件对多个用户——>访问控制列表。
基于角色的访问控制(RBAC)是一种将用户和权限之间的关系存储在角色上的方法,而不是直接存储在用户上。这种模型将用户分组为不同的角色,并将权限分配给这些角色,而不是直接分配给用户。当用户加入或离开某个角色时,他的权限也会随之改变,从而简化了权限管理过程。
1.2.2常见突破访问控制手段
SQL注入
访问控制模型。