五种权限系统设计- Xu


我们如何设计权限系统?下图列出了 5 种常用方法:
1. ACL(访问控制列表) ACL 是一个规则列表,用于指定允许或拒绝哪些用户访问特定资源。
优点 - 易于理解。
缺点——容易出错,维护成本高

2. DAC(自主访问控制)它通过由对象所有者组确定的访问策略授予或限制对象访问。
优点 - 简单灵活。
Linux 文件系统支持 DAC。
缺点 - 分散的权限控制,对象所有者组的权力太大

3. MAC(强制访问控制)资源所有者和资源都有分类标签。不同的标签被授予不同的权限。
优点 - 严格而直接。
缺点 - 不灵活。

4. ABAC(基于属性的访问控制)根据资源所有者、操作、资源和环境的属性评估权限。
优点 - 灵活
缺点 - 规则可能很复杂,实施起来很困难。它不常用。

5. RBAC(基于角色的访问控制)根据角色评估权限
优点 - 灵活分配角色。