980 likes | 1.12k Views
访问控制. 培 训机构 培 训讲师. 标识和鉴别技术. 典型访问控制方法和实现. 强制访问控制模型. 访问控制模型基本概念. 自主访问控制模型. 课程内容. 访问控制模型. 访问 控制. 访问控制技术. 知识子域. 知识域. 知识体. 知识域:访问控制模型. 知识子域:访问控制基本概念 理解标识、鉴别和授权等访问控制的基本概念 理解常用访问控制模型分类. 访问控制的概念和目标. 访问控制:针对越权使用资源的防御措施
E N D
访问控制 培训机构 培训讲师
标识和鉴别技术 典型访问控制方法和实现 强制访问控制模型 访问控制模型基本概念 自主访问控制模型 课程内容 访问控制模型 访问控制 访问控制技术 知识子域 知识域 知识体
知识域:访问控制模型 • 知识子域:访问控制基本概念 • 理解标识、鉴别和授权等访问控制的基本概念 • 理解常用访问控制模型分类
访问控制的概念和目标 • 访问控制:针对越权使用资源的防御措施 • 目标:防止对任何资源(如计算资源、通信资源或信息资源)进行未授权的访问,从而使资源在授权范围内使用,决定用户能做什么,也决定代表一定用户利益的程序能做什么。
访问控制的作用 • 未授权访问:包括未经授权的使用、泄露、修改、销毁信息以及颁发指令等。 • 非法用户对系统资源的使用 • 合法用户对系统资源的非法使用 • 作用:机密性、完整性和可用性
主体与客体 • 主体 • 发起者,是一个主动的实体,可以操作被动实体的相关信息或数据 • 用户、程序、进程等 • 客体 • 一种被动实体,被操作的对象,规定需要保护的资源 • 文件、存储介质、程序、进程等
主体与客体之间的关系 • 主体:接收客体相关信息和数据,也可能改变客体相关信息 • 一个主体为了完成任务,可以创建另外的主体,这些子主体可以在网络上不同的计算机上运行,并由父主体控制它们 • 客体:始终是提供、驻留信息或数据的实体 • 主体和客体的关系是相对的,角色可以互换
授权 • 规定主体可以对客体执行的操作: • 读 • 写 • 执行 • 拒绝访问 • …
标识 • 标识是实体身份的一种计算机表达,每个实体与计算机内部的一个身份表达绑定 • 标识的主要作用:访问控制和审计 • 访问控制:标识用于控制是否允许特定的操作 • 审计:标识用于跟踪所有操作的参与者,参与者的任何操作都能被明确地标识出来
主体标识的实例 • 主体的标识 • 在UNIX中,主体(用户)的身份标识为0-65535之间的一个整数,称为用户身份号(UID) • 常见的主体标识还包括用户名、卡、令牌等,也可以是指纹、虹膜等生物特征
客体标识的实例 • 客体的标识 • 文件名 • 文件描述符或句柄 • 文件分配表的条目 • UNIX中提供了四种不同的文件标识: • inode • 文件描述符 • 绝对路径文件名 • 相对路径文件名
鉴别 • 确认实体是它所声明的,提供了关于某个实体身份的保证,某一实体确信与之打交道的实体正是所需要的实体 • 口令、挑战-应答、生物特征鉴别 • 所有其它的安全服务都依赖于该服务 • 需求:某一成员(声称者)提交一个主体的身份并声称它是那个主体 • 目的:使别的成员(验证者)获得对声称者所声称的事实的信任
访问控制的两个重要过程 • 第一步:鉴别 • 检验主体的合法身份 • 第二步:授权 • 限制用户对资源的访问权限
访问控制模型 • 什么是访问控制模型 • 对一系列访问控制规则集合的描述,可以是非形式化的,也可以是形式化的。 • 组成 提交访问 请求 提出访问 请求 访问控制 实施 主 体 客 体 请求决策 决 策 访问控制 决策
访问控制模型的分类 访问控制列表 (ACL) 自主访问控制模型 (DAC) 访问矩阵模型 权能列表 (Capacity List) 保密性 模型 Bell-Lapudula 模型 访问控制模型 Biba 模型 强制访问控制模型 (MAC) 完整性 模型 Clark-Wilson 模型 混合策 略模型 Chinese Wall 模型 基于角色访问控制模型 (RBAC)
知识域:访问控制模型 • 知识子域:自主访问控制模型 • 理解自主访问控制的含义 • 理解访问控制矩阵模型,及其实现方法:访问控制列表、权能列表 • 理解自主访问控制模型的特点
自主访问控制的含义 • 允许客体的属主(创建者)决定主体对该客体的访问权限 • 灵活地调整安全策略 • 具有较好的易用性和可扩展性 • 常用于商业系统 • 安全性不高
目标 用户 目标x 目标y 目标z 用户a R、W、Own R、W、Own 用户b R、W、Own 用户c R R、W 用户d R R、W 自主访问控制的实现机制和方法 • 实现机制 访问控制表/矩阵 • 实现方法 访问控制表(Access Control Lists) 访问能力表(Capacity List)
访问许可与访问模式 • 访问许可(Access Permission): • 描述主体对客体所具有的控制权 • 定义了改变访问模式的能力或向其它主体传送这种能力的能力 • 访问模式: • 描述主体对客体所具有的访问权 • 指明主体对客体可进行何种形式的特定访问操作:读/写/运行
访问许可的类型 • 等级型(Hierarchical) • 有主型(Owner) 每个客体设置一个拥有者(一般是客体的生成者),拥有者是唯一有权修改客体访问控制表的主体,拥有者对其客体具有全部控制权 • 自由型(Laissez-faire)
访问模式的类型 • 对文件的访问模式设置如下: • 读-拷贝 • 写-删除/更改 • 运行 • 无效
访问控制矩阵 • 行:主体(用户) • 列:客体(文件) • 矩阵元素:规定了相应用户对应于相应的文件被准予的访问许可、访问权限
访问控制表 • 访问控制矩阵按列:访问控制表 • 访问控制表:每个客体可以被访问的主体及权限 客体y 主体b 主体d R W Own R W
访问能力表 • 访问控制矩阵按行:访问能力表 • 访问能力表:每个主体可访问的客体及权限 主体b 客体x 客体y R R W Own
自主访问控制的特点 • 优点: • 根据主体的身份和访问权限进行决策 • 具有某种访问能力的主体能够自主地将访问权的某个子集授予其它主体 • 灵活性高,被大量采用 • 缺点: • 信息在传递过程中其访问权限关系会被改变
知识域:访问控制模型 • 知识子域:强制访问控制模型 • 理解强制访问控制的分类和含义 • 掌握典型强制访问控制模型:Bell-Lapudula模型、Biba模型、Clark-Wilson模型和Chinese Wall模型 • 理解强制访问控制模型的特点
强制访问控制的含义 • 主体对客体的所有访问请求按照强制访问控制策略进行控制,客体的属主无权控制客体的访问权限,以防止对信息的非法和越权访问 • 主体和客体分配有一个安全属性 • 应用于军事等安全要求较高的系统 • 可与自主访问控制结合使用
常见强制访问控制模型 • BLP模型 • 1973年提出的多级安全模型,影响了许多其他模型的发展,甚至很大程度上影响了计算机安全技术的发展 • Biba模型 • 1977年,Biba提出的一种在数学上与BLP模型对偶的完整性保护模型 • Clark-Wilson模型 • 1987年,David Clark和David Wilson开发的以事务处理为基本操作的完整性模型,该模型应用于多种商业系统 • Chinese Wall模型 • 1989年,D. Brewer和M. Nash提出的同等考虑保密性与完整性的安全策略模型,主要用于解决商业中的利益冲突
BLP模型的组成 • 主体集:S • 客体集:O • 安全级:密级和范畴 • 密级:绝密、机密、秘密、公开 • 范畴:NUC、EUR、US • 偏序关系:支配 ≤ • 安全级L=(C,S)高于安全级L’=(C’,S’),当且仅当满足以下关系:C ≥ C’,S S’
BLP模型规则(一) • 简单安全特性: • S可以读O,当且仅当S的安全级可以支配O的安全级,且S对O具有自主型读权限 • 向下读 • *—特性: • S可以写O,当且仅当O的安全级可以支配S的安全级,且S对O具有自主型写权限 • 向上写
BLP模型规则(二) • 当一个高等级的主体必须与另一个低等级的主体通信,即高等级的主体写信息到低等级的客体,以便低等级的主体可以读 • 主体有一个最高安全等级和一个当前安全等级,最高安全等级必须支配当前等级 • 主体可以从最高安全等级降低下来,以便与低安全等级的实体通信
Biba模型的组成 • 主体集:S • 客体集:O • 安全级:完整级和范畴 • 完整等级:Crucial,Very Important,Important • 范畴:NUC、EUR、US • 偏序关系:支配 ≤ • 完整级L=(C,S)高于完整级L’=(C’,S’),当且仅当满足以下关系:C ≥ C’,S S’
Biba模型规则与实例 • S可以读O,当且仅当O的安全级支配S的安全级 • S可以写O,当且仅当S的安全级支配O的安全级
Clark-Wilson模型的目标 • 解决商业系统最关心的问题:系统数据的完整性以及对这些操作的完整性 • 一致性状态:数据满足给定属性,就称数据处于一个一致性状态 • 实例: • 今天到目前为止存入金额的总数:D • 今天到目前为止提取金额的总数:W • 昨天为止所有账户的金额总数:YB • 今天到目前为止所有账户的金额总数:TB • 一致性属性:D+YB-W=TB
Clark-Wilson模型的组成 • 约束型数据项(CDI):所有从属于完整性控制的数据,如:账户结算 • 非约束型数据项(UDI):不从属于完整性控制的数据 • CDI集合和UDI集合是模型中所有数据集合的划分 • 完整性验证过程(IVP):检验CDI是否符合完整性约束,如果符合,则称系统处于一个有效状态,如:检查账户的结算 • 转换过程(TP):将系统数据从一个有效状态转换为另一个有效状态,实现了定义的事务处理,如:存钱、取钱、转账
Clark-Wilson模型规则(一) • 证明规则1(CR1):当任意一个IVP在运行时,它必须保证所有的CDI都处于有效状态 • 证明规则2(CR2) :对于某些相关联的CDI集合,TP必须将那些CDI从一个有效状态转换到另一个有效状态 • 实施规则1(ER1):系统必须维护所有的证明关系,且必须保证只有经过证明可以运行该CDI的TP才能操作该CDI
Clark-Wilson模型 • 自由数据条目 Unconstrained Data Item (UDI) • 受限数据条目 Constrained Data Item (CDI) • 转换程序 Transformation Procedure (TP) • 完整性检查程序 Integrity Verification Procedure (IVP) TP转换UD1为CDI1 TP基于CDI1更新CDI2(订单) 和CDI3(账单) IVP检查所有 订单和账单(CDI2/CDI3) 用户 应用程序服务器 数据库服务器
Chinese Wall模型的组成(一) • 主体集:S • 客体集:O • 无害客体:可以公开的数据 • 有害客体:会产生利益冲突,需要限制的数据 • PR(S)表示S曾经读取过的客体集合
Chinese Wall模型的组成(二) • 公司数据集CD:与某家公司相关的若干客体 • 利益冲突(COI)类:若干相互竞争的公司的数据集 石油公司COI类 银行COI类 公司w 银行a 公司x 公司v 银行c 公司u 银行b
Chinese Wall模型规则 • CW-简单安全特性:S能读取O,当且仅当以下任一条件满足: (1)存在一个O’,它是S曾经访问过的客体,并且 CD(O’)= CD(O) (2)对于所有的客体O’, O’ ∈PR(S),则 COI(O’)≠ COI(O) (3)O是无害客体 • CW-*-特性: S能写O,当且仅当以下两个条件同时满足: (1)CW-简单安全特性允许S读O (2)在其它COI类上不存在该主体可以读取的客体
自主访问控制与强制访问控制的比较 • 自主访问控制 • 细粒度 • 灵活性高 • 配置效率低 • 强制访问控制 • 控制粒度大 • 灵活性不高 • 安全性强
基于角色的访问控制 • 由NIST的Ferraiolo等人在90年代提出 • NIST成立专门机构进行研究 • 1996年提出一个较完善的基于角色的访问控制参考模型RBAC96
RBAC 模型的基本思想 • RBAC的基本思想是根据用户所担任的角色来决定用户在系统中的访问权限。 • 一个用户必须扮演某种角色,而且还必须激活这一角色,才能对一个对象进行访问或执行某种操作。 激活 角色/ 权限 安全管理员 用户 访问或操作 指定
RBAC 96的组成 • RBAC0: 含有RBAC核心部分 • RBAC1: 包含RBAC0,另含角色继承关系(RH) • RBAC2: 包含RBAC0,另含限制(Constraints) • RBAC3: 包含所有层次内容,是一个完整模型
RBAC 模型的组成(一) • 用户(User):访问计算机资源的主体,用户集合为 U • 角色(role):一种岗位,代表一种资格、权利和责任,角色集合为 R • 权限(permission):对客体的操作权力,权限集合为 P • 用户分配(User Assignment) • 将用户与角色关联。 • 用户 u与角色 r关联后,将拥有 r的权限
RBAC 模型的组成(二) • 权限分配(Permission Assignment) • 将角色与权限关联 • 权限 p与角色 r关联后,角色 r将拥有权限 p • 激活角色(Active Role) • 角色只有激活才能起作用,否则不起作用 • 通过会话激活角色 • 会话(Session) • 用户要访问系统资源时,必须先建立一个会话 • 一次会话仅对应一个用户,一次会话可激活几个角色