访问控制模型
一、RBAC
二、ABAC
三、DAC
四、MAC
五、对比总结
访问控制模型用于管理用户对系统资源的访问权限。以下是 RBAC 与其他主流访问控制模型的对比:
模型 | 全称 | 核心概念 | 优点 | 缺点 | 适用场景 |
---|---|---|---|---|---|
RBAC (Role-Based Access Control) | 基于角色的访问控制 | 权限分配给角色,用户通过角色获取权限 | |||
ABAC (Attribute-Based Access Control) | 基于属性的访问控制 | 权限由用户、资源、环境等属性动态决定 | |||
DAC (Discretionary Access Control) | 自主访问控制 | 资源所有者决定访问权限 | |||
MAC (Mandatory Access Control) | 强制访问控制 | 系统强制实施访问策略,用户无法更改 |
关键对比
RBAC vs ABAC
- RBAC 适用于固定角色和权限结构(如企业部门权限)。
- ABAC 适用于动态权限需求(如云服务、IoT设备访问)。
RBAC vs DAC
- RBAC 由管理员统一管理,更安全。
- DAC 允许用户自主授权,灵活性高但安全性低。
RBAC vs MAC
- RBAC 适用于商业系统,灵活性较高。
- MAC 适用于高安全级别系统(如政府、军事),权限严格受限。
如何选择?
- 需要简单、可管理的权限体系 → RBAC
- 需要动态、细粒度的权限控制 → ABAC
- 需要高安全性,防止权限扩散 → MAC
- 需要用户自主管理权限 → DAC
RBAC 是最广泛使用的模型,但现代系统(如云平台)越来越多地采用 RBAC + ABAC 混合模式 以提高灵活性。