一、访问控制的基本概念
1)基本目标:依据授权对提出的资源访问请求进行控制,防止对任何资源进行未授权的访问。
2)访问控制模型基本组成:
3)三要素:
主体(subject):访问的发起者,通常为进程或用户。
客体(object):可供访问的各种软硬件资源。
策略(policy):定义了主体对客体的权限,是访问控制的核心。
4)访问控制框架:
二、自主访问控制DAC
1)自主访问控制(Discretionary Access Control, DAC):是一种最为普遍的访问控制手段,是指对某个客体具有拥有权(或控制权)的主体能够将对该客体的一种访问权或多种访问权自主地授予其它主体,并随时可以将这些权限回收。
所谓自主就是指具有某种访问权力的主体能够自己决定是否将访问权限授予其他主体。
2)特点:根据主体的身份和授权来决定访问模式。
3)缺点:安全性差;用户数量多时,访问控制策略会很庞大;修改麻烦。
三、强制访问控制MAC
1)强制访问控制(Mandatory Access Control,MAC):系统对所有主体及其所控制的客体(进程、文件、段、设备等)指定敏感标记,系统根据主体和客体的敏感标记来决定访问模式。敏感标记一般由密级和范畴组成。如:
所谓“强制”是指安全标签由系统管理员人为设置或由操作系统设置,用户和他们的进程不能修改。
MAC通过安全标签实现单向信息流通模式。
2)BLP(Bell-LaPadula)模型——保护机密性
- 每个主体和客体都划分一个密级 A;
- 每个主体和客体都划分一个业务范围 C;
- 设SC为全体安全级别<A,C>的集合:
SC= <A,C>
- 定义二元关系≤如下,并称关系≤为支配 :
SC= <A,C> , SC’=<A’,C’>,
若 A≤A’ and C⊆C’
则 SC ≤ SC’,称为SC‘支配SC。
- 在[SC, ≤]中定义运算⊕、⊙如下:
<A,C> ⊕ <A’,C’> = <max(A,A’),C ∪ C’> ,
<A,C> ⊙ <A’,C’> = <min(A,A’),C ∩ C’> 。
- 向下读:主体s对客体o具有读访问权-->当且仅当s支配o,即<As,Cs> ≥ <Ao,Co>。
例如:设军官A和文件F1的安全级别为
F1:< secret ,NATO 、NUCLEAR >,
A:< topsecret ,NATO 、NUCLEAR 、NMD>,
则军官A可以阅读文件F1。
- 向上写:主体s对客体o具有写访问权-->当且仅当o支配s,即<As,Cs> ≤ <Ao,Co>。
例如,设军官