通常文件的Own权限表示可授予(Authorize)或撤消(Revoke)其他用户对该文件访问权限。
实际系统中虽然可能有很多主体与客体,但两者之间的权限关系可能并不多。
为了减轻系统开销与浪费,我们可以从主体(行)出发,表达矩阵某一行的信息,这就是访问能力表(Capabilities)。
只有当主体对某个客体拥有访问能力时,它才能访问这个客体。
但要从访问能力表获得对某一特定客体有特定权限的所有主体就比较困难。
在安全系统中,正是客体需要得到可靠保护,访问控制服务应该能够控制访问某一客体的主体集合,便出现客体为中心的实现方式 —— ACL。
从客体(列)出发,表达矩阵某一列的信息,就是 访问控制表(Access Control List)。
它可对某一特定资源指定任一用户的访问权限,还将有相同权限的用户分组授予访问权。
ACL 的优点:表述直观、易于理解,容易查出对某一特定资源拥有访问权限的所有用户。
将 ACL 应用到规模大的企业内部网时,有如下问题:
-
网络资源很多,ACL 需要设定大量的表项,而且修改起来比较困难,实现整个组织范围内一致的控制政策也比较困难。
-
单纯使用 ACL,不易实现 最小权限原则 及复杂的安全政策。
授权关系表(Authorization Relations)的每一行表示了主体和客体的一个授权关系。
-
对表按客体进行排序,可以得到访问控制表的优势;
-
对表按主体进行排序,可以得到访问