兰 亭 墨 苑
期货 · 量化 · AI · 终身学习
首页
归档
编辑文章
标题 *
URL 别名 *
内容 *
(支持 Markdown 格式)
# 操作系统权限模型:DAC与MAC 在操作系统安全中,**DAC** 和 **MAC** 是两种经典的权限控制模型,它们的核心区别在于**“谁来决定权限、权限能否被随意更改”**。 --- ## 一、DAC(Discretionary Access Control,自主访问控制) ### 核心特点 - **资源所有者决定权限** - 权限可以被用户**自由授予、修改或传播** - 灵活,但安全性相对较弱 ### 工作方式 - 每个对象(文件、目录)都有一个**所有者** - 所有者可以决定谁能访问以及访问方式(读 / 写 / 执行) - 常见实现: - Linux/Unix 文件权限 `rwx` - ACL(访问控制列表) ### 示例 ```bash -rw-r----- userA dev file.txt ``` - `userA` 可以把文件权限给 `userB` - `userB` 还可以再授权给其他人(如果权限允许) ### 优点 ✅ 灵活、易用 ✅ 适合通用操作系统和日常办公环境 ### 缺点 ❌ 容易被滥用 ❌ 一旦用户被攻破,权限可能被随意扩散 --- ## 二、MAC(Mandatory Access Control,强制访问控制) ### 核心特点 - **系统强制决定权限** - 用户**不能随意更改权限** - 以安全策略为中心,强调“不可越权” ### 工作方式 - 每个主体(用户/进程)和客体(文件/资源)都有**安全级别或标签** - 访问是否允许,由系统根据**全局安全策略**判断 - 用户即使是文件“所有者”,也不能更改安全级别 ### 常见实现 - SELinux(Linux) - AppArmor(部分 MAC 特性) - 军事 / 政府系统的多级安全模型 ### 示例(概念性) - 文件标签:`Secret` - 进程标签:`Confidential` - 规则:**低级别不能读高级别数据** 即使你拥有文件,也可能: - 不能读 - 不能拷贝 - 不能降级安全标签 ### 优点 ✅ 安全性极高 ✅ 防止权限扩散和越权访问 ### 缺点 ❌ 配置复杂 ❌ 使用和调试成本高 --- ## 三、DAC 与 MAC 对比总结 | 对比项 | DAC | MAC | |------|----|----| | 权限决定者 | 资源所有者 | 系统安全策略 | | 用户能否改权限 | ✅ 可以 | ❌ 不可以 | | 灵活性 | 高 | 低 | | 安全性 | 中 | 高 | | 常见场景 | Linux/Windows 日常系统 | SELinux、军工/政府系统 | | 防止越权能力 | 弱 | 强 | --- ## 四、一句话总结 - **DAC:我拥有 → 我说了算** - **MAC:系统规定 → 谁都不能破** 如果你愿意,我也可以: - 用 **Linux 实例**对比 DAC / MAC - 结合 **SELinux** 讲 MAC 的实际工作流程 - 对比 **RBAC(基于角色访问控制)** 随时告诉我 👍
配图 (可多选)
选择新图片文件或拖拽到此处
标签
更新文章
删除文章