《企业访问控制策略落地指南》
第2章 访问控制模型
2. 访问控制模型:DAC、MAC、RBAC
访问控制模型是定义“谁”能够以“何种方式”访问“哪些资源”的规则框架。在企业安全架构中,选择合适的模型是策略落地的核心。本节将深入剖析三种经典模型:自主访问控制(DAC)、强制访问控制(MAC)和基于角色的访问控制(RBAC)。
图2-1:三大访问控制模型核心特征对比
2.1 自主访问控制(DAC)
定义:资源的所有者(创建者)可以自主决定谁可以访问其资源,以及授予何种权限(读、写、执行等)。
📌 核心特征
- 所有权驱动:每个资源都有一个明确的所有者。
- 权限可传递:用户可以将权限授予其他用户(如Linux的
chmod)。 - 灵活性高:适合协作环境,但安全性依赖用户判断。
- 典型实现:Unix/Linux文件权限(rwx)、Windows NTFS权限。
图2-2:DAC模型——Alice自主将文件权限授予Bob
2.2 强制访问控制(MAC)
定义:系统根据全局安全策略(如安全标签、密级)强制控制所有主体对客体的访问,用户无法改变权限。
🔐 核心特征
- 策略集中:由安全管理员定义全局规则(如Bell-LaPadula模型)。
- 标签机制:每个主体(用户/进程)和客体(文件/设备)都有安全标签(如:绝密、机密、公开)。
- 不可绕过:即使文件所有者也无法降低其安全级别。
- 典型实现:SELinux、AppArmor、军用级系统。
图2-3:MAC模型——系统根据安全标签强制判定访问
2.3 基于角色的访问控制(RBAC)
定义:权限不直接授予用户,而是授予“角色”。用户通过被分配角色来获得相应权限,实现用户与权限的逻辑分离。
🏢 核心特征
- 角色作为中介:用户 ↔ 角色 ↔ 权限,三层映射关系。
- 最小权限原则:角色只包含完成工作所需的最小权限集。
- 职责分离(SoD):可配置互斥角色(如出纳与会计不能同一人)。
- 典型实现:NIST RBAC标准、Spring Security、企业AD/LDAP。
图2-4:RBAC模型——用户通过角色获得权限
2.4 三种模型对比总结
2.5 企业落地建议
💡 策略选择矩阵
- 中小型企业:以RBAC为主,结合DAC处理个人文件共享需求。
- 大型/合规敏感企业:核心系统采用MAC(如SELinux),业务系统采用RBAC+ABAC(属性扩展)。
- 混合架构:使用RBAC作为统一框架,在关键数据节点叠加MAC标签控制。
注:现代企业常采用RBAC作为基础,并引入ABAC(基于属性的访问控制)进行动态扩展,但RBAC仍是落地最广泛的模型。
图2-5:企业级访问控制分层落地架构(RBAC + MAC + DAC)
专注课程资料整理