如果说安全主要应对外部威胁,那么*保护(Protection)*就是阻止内部用户或程序误用系统资源。操作系统为此提供精细的保护机制。
本文围绕保护原则、保护域、访问控制与保护策略,逐步展开。
操作系统保护从两个问题出发:
- 谁?
- 可以做什么?
为了回答这两个问题,操作系统明确规定每个用户
对哪些资源拥有哪些权限
,据此允许或拒绝访问。
可以想象学校图书馆:教师能够借所有书,学生只能借部分书;教职工可以进入所有阅览室,学生可能只能进入阅览室A。决定“谁可以做什么”,就是保护的核心。
保护域结构(Domain Structure) 🔗
保护域是用户或程序拥有的
权限集合
。用户登录或程序执行后,操作系统只允许其在对应保护域中行动。
- 用户A:可以读取文件,不能修改系统设置。
- 管理员:可以访问所有资源。
- 程序:只能访问部分内存,不能使用网络。

受限访问
操作系统精细管理谁可以用什么方式访问哪些资源,为此采用多种访问控制方法。
1. 访问控制矩阵(Access Control Matrix) 🔗
- 行:用户或保护域。
- 列:文件、目录、打印机等资源。
- 单元格:读取、写入、执行等允许的权限。
예: 사용자 A가 파일 X를 읽고 쓸 수 있음 → 행 A, 열 X = read/write
实际矩阵可能非常大,因此常用下面两种方式优化。
- 针对每项资源,保存允许访问的用户列表。
- 例如,文件X → {A: read/write, B: read only}。
3. 能力列表(Capability List) 🔗
- 针对每个用户,保存其可以访问的资源列表。
- 例如,用户A → {文件X: read/write, 打印机: execute}。
- 用比特表示资源访问权限。
- 例如,用一位表示文件X的访问权限:0为不可访问,1为可访问。
예: 파일 X에 대한 접근 권한 비트맵
파일 X: 1100 (사용자 A: 읽기, 쓰기 가능, 사용자 B: 읽기 불가)
操作系统按照以下原则设计保护系统。
最小权限原则(Least Privilege) 🔗
- 用户只应拥有
完成当前工作必需的最少权限
。
- 例如,仅负责写文章的用户,不应拥有修改设置的权限。
- 分离资源,避免用户或程序相互影响。
- 例如,一个应用出错,不影响其他应用。
- 记录并分析所有访问,以便在出现问题时追踪。
- 例如,系统日志记录“用户B访问了文件X”。
操作系统保护不只是设置权限,而是一个安全地分离、控制和记录资源使用的完整系统。理解保护原则、保护域、访问控制和策略设计,可以巩固安全基础。
下一篇介绍
虚拟机与硬件虚拟化
。