现代操作系统第15章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2
8.5.1 保护域(Protection Domain)(1)
保护域指出了进程所能访问的对象,每个对 象都有唯一的名字,既可以是硬件对象,也可 以是软件对象。进程仅在保护域内执行操作, 域1 域2 域3 一方面根据对象的不同,对对象所允许施加的 操作有所不同。另一方面不允许进程访问所有 F3[R] 对象,只允许进程去访问那些它必须去访问的 F1[R] F6[RWE] F4[RWE] 对象,这就是所谓的须知(Read to Know)原则。 F2[RW] PRINTER[W] 把一个进程能对某对象执行操作的权利称为 访问权。每种访问权可用一有序对(对象名, 权集)来表示。域是一组对象访问权的集合。 三个保护域
18
8.5.5 分级安全管理(3)
三、目录级安全管理:是为保护系统中的各种目录而设 计的,与用户权限无关。并规定只有系统核心才有写 目录的权利。 用户对目录的读/写和执行与一般文件中的读/写和 执行的含义不同:这里的读许可权表示进程读目录, 写许可权表示允许进程请求核心为之建立或撤消目录 项;执行许可权表示允许进程检索目录,找出一指定 文件。 通常,系统分别地为用户和目录独立地指定权限。 当一用户试图访问一目录时,核心将通过对用户访问 权和目录中的访问权的比较后,用户才能获得有效访 问权,即有效访问权是上述两个权限的交集。用户的 访问权限只有在有效权限内时,才允许用户访问。
12
8.5.4 访问矩阵的实现(2)
二、访问权限(Capabilities)表:把访问矩阵按行(域) 划分,便可得到由一行构成的访问权限表,即由一 个域对每一个对象可以进行的一组操作所构成的表。 表中的每一项即为该域对某一对象的访问权限。当 域为用户,对象为文件时,访问权限表便可用来描 述一个用户对每一个文件所能执行的一组操作。
19
8.5.5 分级安全管理(4)
四、文件级安全管理:是通过系统管理员或文件主对 文件属性的设置,来控制用户对文件的访问。通常 设置的属性有八种:只执行、隐含(指示该文件是 隐含文件)、索引(指示该文件是索引文件) 、修 改(指示该文件自上次备份后是否已被修改) 、只 读、读/写、共享、系统。 用户对文件的访问,将由用户访问权、目录访问 权及文件属性三者的权限所确定。或者说,是有效 权限和文件属性的交集。例如,对于只读文件,尽 管用户的有效权限是读/写,但却不能对只读文件进 行修改、更名和删除。 上述四级文件保护措施,可有效地实现对文件的 保护。
20
7
8.5.3 访问矩阵的修改(2)
一、拷贝权:利用拷贝权可将某个域所拥有的访问权 (access(i,j)),扩展到同一列中的其他域。
对象 FILE 1 域 D1 E D2 D3 E E FILE FILE 2 3 W* R* E 对象 FILE FILE 1 2 域 D1 E D2 D3 E E R* R FILE 3 W* E W
5
访问矩阵的例子
对象 文件1 文件2 打印 机1 域 D1 R D2 D3 R,W W W 域D1 域D2 S S 域D3
6
8.5.3 访问矩阵的修改(1)
系统建立了访问矩阵后,随着系统 的发展,用户的增加和改变,必然要 经常对访问矩阵进行修改,因此,应 当允许可控性地修改访问矩阵中的内 容。可通过在访问权中增加拷贝权、 拥有权和控制权的方法来实现。
4
8.5.2 访问矩阵(Access Matrix)
访问矩阵用来描述系统的存取控制,其行代表域, 列代表对象。矩阵中的每一项由一组访问权组成。每 一项访问权access(i,j)定义了在域Di中执行的进程能 对对象Qj施加的操作集。 访问矩阵中的访问权通常是由资源的拥有者或管理 者来决定。当用户创建一新文件时,创建者便是拥有 者,系统在访问矩阵中为新文件增加一列,由用户决 定在该列中各项应具有的访问权。当用户删除此文件 时,也要相应地将该文件在访问矩阵中的列取消。 为实现进程和域之间的动态联系,应将切换作为一 种权利,仅当进程拥有切换权时,才能进行切换。为 此,应将域也作为对象,当且仅当switch∈access(i,j) 时,才允许进程从域Di切换到Dj。
D2 D3
决定。
R,W
W W control
S
10
8.5.4 访问矩阵的实现(1)
访问矩阵是一个稀疏矩阵,目前实现的方法 是将访问矩阵按列划分,或者按行划分,分 别形成访问控制表或访问权限表。 一、访问控制表(ACL):指对访问矩阵按列(对 象)进行划分,为每列建立一张ACL,此时的 ACL是由一有序对(域,权集)组成。在不少 系统中,当对象是文件时,便把ACL存放在该 文件的文件控制表或索引结点中,作为该文 件的存取控制信息。 域是一个抽象的概念,能以各种方式实现:
9
8.5.3 访问矩阵的修改(4)
三、控制权:拷贝权和所有权都是用于改变矩阵内在 同一列的各项访问权,或者说是用于改变运行在不 同域中的进程对同一对象的访问权。控制权则用于 改变矩阵内一行中各项的访问权,亦即用于改变某 个域中运行进程对不同对象的访问权。若access(i,j) 中包含了控制权,则在域Di中运行的进程,可以删 除在域Dj中运行的进程对各对象的任何访问权。 上述的访问矩阵是保护的基本机制。只是保护的 对象 文件1 文件2 打印机1 域D1 域D2 域D3 一个方面,另一方面是有关保护的策略,即对每一个 域 域允许有那些访问权,必须由系统的设计者和用户来 D1 R S
11
一、访问控制表(ACL)(2)
⑴每个用户可以是一个域。对象则是文件。此时, 用户能够访问的文件集和访问权限取决于用户 的身份。当用户发生改变时,进行域的切换。 ⑵每个进程是一个域。此时,能够访问的对象集 中的各访问权,取决于进程的身份。 ACL也可用于定义缺省的访问权集,即在该 表中列出各个域对某对象的缺省访问权集。当 某用户要访问某资源时,系统首先查找缺省 ACL,以确定用户是否具有访问权利,找不到, 再查找相应对象的ACL。
15
8.5.5 分级安全管理(1)
一、系统级安全管理:其主要任务是不允许未经核准 的用户进入系统,采用的方法主要有: 1、 注册:其主要目的是使系统管理员能够掌握要使 用系统的用户的情况,并保证用户名在系统中的唯 一性。一用户在要使用系统之前,应先申请注册, 由管理员在用户表中找出一空项,填上注册用户的 用户名和口令。 2、 登录:注册用户要使用系统,需进行登录。登录 的主要目的是核实用户的合法性。 3、若干措施。规定定期修改口令、指定上机终端、 指定上机时间等。
14
8.5.4 访问矩阵的实现(3)
目前,大多数系统都同时采用访问控制表和访 问权限表。在系统中为每个对象配置一张访问控 制表。当一个进程试图首次访问一个对象时,必 须先检查访问控制表,检查进程是否具有对该对 象的访问权。如果无权访问该对象,由系统来拒 绝该进程的访问,否则,允许该进程访问该对象 而为之建立一访问权限,并将它连接到该进程。 以后进程便可直接利用返回的权限去访问该对象。 当进程不再需要对该对象进行访问时,便可将访 问权限取消。
3
8.5.1 保护域(Protection Domain)(2)
进程与域之间的两种联系: 1、静态联系:指进程的可用资源集在进程的整个生命 周期中是固定的。但由于进程在运行中,往往是在 不同阶段对资源以不同的方式来使用,因此必须有 一种机制来改变域中的内容,使之符合Read to Know原则。在静态联系方式,应允许修改域的内容。 2、动态联系:指进程的可用资源集在其整个生命周期 中是变化的。即进程运行在不同的阶段时,需要从 一个保护域切换到另一个保护域。因此,需要一种 机制来实现这种切换,同时也应允许改变域中的内 容。若不能改变域中的内容,则可先创建一个所需 要新域,在进程运行到下一阶段时,再将进程从原 来的保护域切换到新的保护域。
17
二、用户级安全管理
2、文件访问权:已经在系统中登录的用户都具 有指定的访问权。访问权决定了用户对文件所 能执行的操作。当对某用户赋予其访问指定目 录的权限时,他便具有了对该目录下的所有子 目录和文件的访问权。某种访问权也可赋予一 个用户组,这时该组的每个成员便都具有这种 访问权。 可以定义八种访问权:建立、删除、打开、 读、写、查询(查找目录文件)、修改、父权 (允许建立/改名/删除子目录,具有对某些用 户赋予对目录和子目录的访问权。)
对象 文件1 文件2 打印 域D1 域 域D3 对应于域D2的访问权限表 D2 机1 域 类型 对 象 D1 R S 权利 D2 D3 R,W W W 文 件 打印机 RW S 指向文件2的指针 -W- 指向打印机1指针
13
二、访问权限(Capabilities)表
应当指出,只有当访问权限表是安全的,则由它 所保护的对象才可能是安全的。因此,访问权限表 不允许用户(进程)直接访问。对访问权限表的保 护可采用三种方式: ⑴将访问权限表存储在系统区内的一个专用区中,只 允许OS对它进行访问。 OS ⑵为每个对象建立一个标识位,用于标明该对象是否 要访问权限表,该标识不允许被用户程序访问。 ⑶可以将访问权限表放在用户空间,但须将表中的每 一个访问权限都译成密码。
16
8.5.5 分级安全管理(2)
二、用户级安全管理:这是为给用户分配“文件访 问权”而设计的。用户级安全包括对所有用户分 类和为指定用户分配文件访问权两方面的内容。 1、用户分类:有的系统,用户被分成三类: ⑴文件主,指文件的创建者。 ⑵伙伴,由文件主指定的少数用户。 ⑶一般用户。 有的系统,则把用户分为: ⑴超级用户,具有最高文件访问权的用户。 ⑵系统操作员。系统赋予其较高的文件访问权。 ⑶用户。 ⑷顾客。系统限定他只能访问某些特定文件。Leabharlann 第9章系统安全性1
8.5 文件保护
影响文件安全性的主要因素有: ⑴人为因素; ⑵系统因素; ⑶自然因素。 为确保文件系统的安全性,可采取的措施有: ⑴通过存取控制机制来防止由人为因素所造成的 文件的不安全性。 ⑵通过系统容错技术,来防止系统的部分故障所 造成的文件不安全性。 ⑶通过后备系统来防止由自然因素所造成的不安 全性。 本节主要讨论存取控制机制。
拷贝访问权存在以下两种变型: 1、转换拷贝权。实质是转移访问权。 2、限制拷贝权。接受访问权拷贝的域,不能将该 访问权拷贝到其他域。
8
8.5.3 访问矩阵的修改(3)
二、所有权:不仅要求将已有的访问权进 行有控制的扩散,而且需要能增加或删除 某种访问权。这可利用所有权来实现这些 操作。若在access(i,j)中包含有所有权, 则在域Di上执行的进程,可以增加或删除 在j列的任何项中的任何访问权。换言之, 该进程可以增加或删除在任何其他域中运 行的进程对对象j的访问权。
8.5.1 保护域(Protection Domain)(1)
保护域指出了进程所能访问的对象,每个对 象都有唯一的名字,既可以是硬件对象,也可 以是软件对象。进程仅在保护域内执行操作, 域1 域2 域3 一方面根据对象的不同,对对象所允许施加的 操作有所不同。另一方面不允许进程访问所有 F3[R] 对象,只允许进程去访问那些它必须去访问的 F1[R] F6[RWE] F4[RWE] 对象,这就是所谓的须知(Read to Know)原则。 F2[RW] PRINTER[W] 把一个进程能对某对象执行操作的权利称为 访问权。每种访问权可用一有序对(对象名, 权集)来表示。域是一组对象访问权的集合。 三个保护域
18
8.5.5 分级安全管理(3)
三、目录级安全管理:是为保护系统中的各种目录而设 计的,与用户权限无关。并规定只有系统核心才有写 目录的权利。 用户对目录的读/写和执行与一般文件中的读/写和 执行的含义不同:这里的读许可权表示进程读目录, 写许可权表示允许进程请求核心为之建立或撤消目录 项;执行许可权表示允许进程检索目录,找出一指定 文件。 通常,系统分别地为用户和目录独立地指定权限。 当一用户试图访问一目录时,核心将通过对用户访问 权和目录中的访问权的比较后,用户才能获得有效访 问权,即有效访问权是上述两个权限的交集。用户的 访问权限只有在有效权限内时,才允许用户访问。
12
8.5.4 访问矩阵的实现(2)
二、访问权限(Capabilities)表:把访问矩阵按行(域) 划分,便可得到由一行构成的访问权限表,即由一 个域对每一个对象可以进行的一组操作所构成的表。 表中的每一项即为该域对某一对象的访问权限。当 域为用户,对象为文件时,访问权限表便可用来描 述一个用户对每一个文件所能执行的一组操作。
19
8.5.5 分级安全管理(4)
四、文件级安全管理:是通过系统管理员或文件主对 文件属性的设置,来控制用户对文件的访问。通常 设置的属性有八种:只执行、隐含(指示该文件是 隐含文件)、索引(指示该文件是索引文件) 、修 改(指示该文件自上次备份后是否已被修改) 、只 读、读/写、共享、系统。 用户对文件的访问,将由用户访问权、目录访问 权及文件属性三者的权限所确定。或者说,是有效 权限和文件属性的交集。例如,对于只读文件,尽 管用户的有效权限是读/写,但却不能对只读文件进 行修改、更名和删除。 上述四级文件保护措施,可有效地实现对文件的 保护。
20
7
8.5.3 访问矩阵的修改(2)
一、拷贝权:利用拷贝权可将某个域所拥有的访问权 (access(i,j)),扩展到同一列中的其他域。
对象 FILE 1 域 D1 E D2 D3 E E FILE FILE 2 3 W* R* E 对象 FILE FILE 1 2 域 D1 E D2 D3 E E R* R FILE 3 W* E W
5
访问矩阵的例子
对象 文件1 文件2 打印 机1 域 D1 R D2 D3 R,W W W 域D1 域D2 S S 域D3
6
8.5.3 访问矩阵的修改(1)
系统建立了访问矩阵后,随着系统 的发展,用户的增加和改变,必然要 经常对访问矩阵进行修改,因此,应 当允许可控性地修改访问矩阵中的内 容。可通过在访问权中增加拷贝权、 拥有权和控制权的方法来实现。
4
8.5.2 访问矩阵(Access Matrix)
访问矩阵用来描述系统的存取控制,其行代表域, 列代表对象。矩阵中的每一项由一组访问权组成。每 一项访问权access(i,j)定义了在域Di中执行的进程能 对对象Qj施加的操作集。 访问矩阵中的访问权通常是由资源的拥有者或管理 者来决定。当用户创建一新文件时,创建者便是拥有 者,系统在访问矩阵中为新文件增加一列,由用户决 定在该列中各项应具有的访问权。当用户删除此文件 时,也要相应地将该文件在访问矩阵中的列取消。 为实现进程和域之间的动态联系,应将切换作为一 种权利,仅当进程拥有切换权时,才能进行切换。为 此,应将域也作为对象,当且仅当switch∈access(i,j) 时,才允许进程从域Di切换到Dj。
D2 D3
决定。
R,W
W W control
S
10
8.5.4 访问矩阵的实现(1)
访问矩阵是一个稀疏矩阵,目前实现的方法 是将访问矩阵按列划分,或者按行划分,分 别形成访问控制表或访问权限表。 一、访问控制表(ACL):指对访问矩阵按列(对 象)进行划分,为每列建立一张ACL,此时的 ACL是由一有序对(域,权集)组成。在不少 系统中,当对象是文件时,便把ACL存放在该 文件的文件控制表或索引结点中,作为该文 件的存取控制信息。 域是一个抽象的概念,能以各种方式实现:
9
8.5.3 访问矩阵的修改(4)
三、控制权:拷贝权和所有权都是用于改变矩阵内在 同一列的各项访问权,或者说是用于改变运行在不 同域中的进程对同一对象的访问权。控制权则用于 改变矩阵内一行中各项的访问权,亦即用于改变某 个域中运行进程对不同对象的访问权。若access(i,j) 中包含了控制权,则在域Di中运行的进程,可以删 除在域Dj中运行的进程对各对象的任何访问权。 上述的访问矩阵是保护的基本机制。只是保护的 对象 文件1 文件2 打印机1 域D1 域D2 域D3 一个方面,另一方面是有关保护的策略,即对每一个 域 域允许有那些访问权,必须由系统的设计者和用户来 D1 R S
11
一、访问控制表(ACL)(2)
⑴每个用户可以是一个域。对象则是文件。此时, 用户能够访问的文件集和访问权限取决于用户 的身份。当用户发生改变时,进行域的切换。 ⑵每个进程是一个域。此时,能够访问的对象集 中的各访问权,取决于进程的身份。 ACL也可用于定义缺省的访问权集,即在该 表中列出各个域对某对象的缺省访问权集。当 某用户要访问某资源时,系统首先查找缺省 ACL,以确定用户是否具有访问权利,找不到, 再查找相应对象的ACL。
15
8.5.5 分级安全管理(1)
一、系统级安全管理:其主要任务是不允许未经核准 的用户进入系统,采用的方法主要有: 1、 注册:其主要目的是使系统管理员能够掌握要使 用系统的用户的情况,并保证用户名在系统中的唯 一性。一用户在要使用系统之前,应先申请注册, 由管理员在用户表中找出一空项,填上注册用户的 用户名和口令。 2、 登录:注册用户要使用系统,需进行登录。登录 的主要目的是核实用户的合法性。 3、若干措施。规定定期修改口令、指定上机终端、 指定上机时间等。
14
8.5.4 访问矩阵的实现(3)
目前,大多数系统都同时采用访问控制表和访 问权限表。在系统中为每个对象配置一张访问控 制表。当一个进程试图首次访问一个对象时,必 须先检查访问控制表,检查进程是否具有对该对 象的访问权。如果无权访问该对象,由系统来拒 绝该进程的访问,否则,允许该进程访问该对象 而为之建立一访问权限,并将它连接到该进程。 以后进程便可直接利用返回的权限去访问该对象。 当进程不再需要对该对象进行访问时,便可将访 问权限取消。
3
8.5.1 保护域(Protection Domain)(2)
进程与域之间的两种联系: 1、静态联系:指进程的可用资源集在进程的整个生命 周期中是固定的。但由于进程在运行中,往往是在 不同阶段对资源以不同的方式来使用,因此必须有 一种机制来改变域中的内容,使之符合Read to Know原则。在静态联系方式,应允许修改域的内容。 2、动态联系:指进程的可用资源集在其整个生命周期 中是变化的。即进程运行在不同的阶段时,需要从 一个保护域切换到另一个保护域。因此,需要一种 机制来实现这种切换,同时也应允许改变域中的内 容。若不能改变域中的内容,则可先创建一个所需 要新域,在进程运行到下一阶段时,再将进程从原 来的保护域切换到新的保护域。
17
二、用户级安全管理
2、文件访问权:已经在系统中登录的用户都具 有指定的访问权。访问权决定了用户对文件所 能执行的操作。当对某用户赋予其访问指定目 录的权限时,他便具有了对该目录下的所有子 目录和文件的访问权。某种访问权也可赋予一 个用户组,这时该组的每个成员便都具有这种 访问权。 可以定义八种访问权:建立、删除、打开、 读、写、查询(查找目录文件)、修改、父权 (允许建立/改名/删除子目录,具有对某些用 户赋予对目录和子目录的访问权。)
对象 文件1 文件2 打印 域D1 域 域D3 对应于域D2的访问权限表 D2 机1 域 类型 对 象 D1 R S 权利 D2 D3 R,W W W 文 件 打印机 RW S 指向文件2的指针 -W- 指向打印机1指针
13
二、访问权限(Capabilities)表
应当指出,只有当访问权限表是安全的,则由它 所保护的对象才可能是安全的。因此,访问权限表 不允许用户(进程)直接访问。对访问权限表的保 护可采用三种方式: ⑴将访问权限表存储在系统区内的一个专用区中,只 允许OS对它进行访问。 OS ⑵为每个对象建立一个标识位,用于标明该对象是否 要访问权限表,该标识不允许被用户程序访问。 ⑶可以将访问权限表放在用户空间,但须将表中的每 一个访问权限都译成密码。
16
8.5.5 分级安全管理(2)
二、用户级安全管理:这是为给用户分配“文件访 问权”而设计的。用户级安全包括对所有用户分 类和为指定用户分配文件访问权两方面的内容。 1、用户分类:有的系统,用户被分成三类: ⑴文件主,指文件的创建者。 ⑵伙伴,由文件主指定的少数用户。 ⑶一般用户。 有的系统,则把用户分为: ⑴超级用户,具有最高文件访问权的用户。 ⑵系统操作员。系统赋予其较高的文件访问权。 ⑶用户。 ⑷顾客。系统限定他只能访问某些特定文件。Leabharlann 第9章系统安全性1
8.5 文件保护
影响文件安全性的主要因素有: ⑴人为因素; ⑵系统因素; ⑶自然因素。 为确保文件系统的安全性,可采取的措施有: ⑴通过存取控制机制来防止由人为因素所造成的 文件的不安全性。 ⑵通过系统容错技术,来防止系统的部分故障所 造成的文件不安全性。 ⑶通过后备系统来防止由自然因素所造成的不安 全性。 本节主要讨论存取控制机制。
拷贝访问权存在以下两种变型: 1、转换拷贝权。实质是转移访问权。 2、限制拷贝权。接受访问权拷贝的域,不能将该 访问权拷贝到其他域。
8
8.5.3 访问矩阵的修改(3)
二、所有权:不仅要求将已有的访问权进 行有控制的扩散,而且需要能增加或删除 某种访问权。这可利用所有权来实现这些 操作。若在access(i,j)中包含有所有权, 则在域Di上执行的进程,可以增加或删除 在j列的任何项中的任何访问权。换言之, 该进程可以增加或删除在任何其他域中运 行的进程对对象j的访问权。