每种都有什么好处,我应该什么时候选择一个而不是另一个?是否存在应该合并这些的情况?
你有常见用法的例子吗?
那么MAC呢,它适用于哪里?
每种都有什么好处,我应该什么时候选择一个而不是另一个?是否存在应该合并这些的情况?
你有常见用法的例子吗?
那么MAC呢,它适用于哪里?
RBAC(基于角色的访问控制)基于定义业务角色列表,并将系统中的每个用户添加到一个或多个角色。然后将权限和特权授予每个角色,并且用户通过他们在角色中的成员资格(几乎相当于一个组)来接收它们。应用程序通常会测试用户是否具有特定角色的成员资格,并基于此授予或拒绝访问权限。
自主访问控制 (DAC) 允许用户或管理员在特定资源(例如文件、注册表项、数据库表、操作系统对象等)上定义访问控制列表 (ACL),该列表将包含定义的条目 (ACE)每个有权访问资源的用户,以及她对该资源的权限。
与 DAC 相比,RBAC 的主要优点是易于管理 - 原则上,无论有多少用户,您都有很少的角色,集中管理,而这只是授予每个用户正确角色的问题;与 DAC 不同,对于每个新用户(或用户更改或删除等),您必须访问她需要访问的所有资源并将它们添加到列表中。
另一方面,DAC 通常更简单,通常更细化。此外,在 DAC 模型中,数据所有者可以决定谁有权访问(如果他对数据具有该权限)并从列表中添加或删除人员。
DAC 非常常见的示例是 Windows 文件系统。另一方面,非常常见的 RBAC 示例是公司文件服务器上的 DAC——“Sales”ActiveDirectory 组中的任何人都可以访问 \Sales\ 共享文件夹。更常见的是 Windows 中的管理员组。
MAC 是 Mandatory Access Control,这可以看作是一个分类或隐私级别。这最常用于军事系统,并且早在大型机时代:)。没有那么多使用了,尽管当前的操作系统正在实现这种风格,例如 Vista/Win7 的完整性级别。
总结一下区别: