Trusted Extensions 用户指南

退出打印视图

更新时间: 2014 年 7 月
 
 

强制访问控制

强制访问控制 (mandatory access control, MAC) 是一种基于标签关系的、由系统强制执行的访问控制机制。系统将敏感标签与创建用来执行程序的所有进程关联起来。MAC 策略使用这种标签来进行访问控制决策。一般情况下,进程无法存储信息,也不能与其他进程进行通信,除非目标标签等同于该进程的标签。MAC 策略允许进程从同一级别标签对象读取数据,或者从较低级别标签对象读取数据。但是,管理员可以创建一个其中仅存在很少较低级别对象或没有较低级别对象的有标签环境。

缺省情况下,MAC 策略对用户不可见。一般用户必须具有对对象的 MAC 访问权限,才能看到这些对象。在任何情况下,用户都不能采取违背 MAC 策略的操作。

敏感标签和安全许可

    标签具有以下两个组件:

  • 等级,也称级别

    此组件表示有层次的安全性级别。对用户来说,等级代表信任的度量;而对数据来说,等级则代表其需要的保护程度。

    在美国政府中,等级分为 TOP SECRET(绝密)、SECRET(秘密)、CONFIDENTIAL(机密)和 UNCLASSIFIED(未分类)。行业等级不作为标准化的等级。一家公司可以建立唯一的等级。有关示例,请参见Figure 1–2。左侧的术语代表各个等级,右侧的术语则代表各个区间。

  • 区间,也称为类别

    区间代表分组,例如工作组、部门、项目或主题。一个等级不一定要具有区间。在Figure 1–2 中,Confidential(机密)等级具有三个专有的区间。Public(公共)等级和 Max Label(最大标签)则不具有区间。如图所示,该组织定义了五个标签。

Trusted Extensions 维护两种类型的标签:敏感标签和安全许可。系统可以许可用户在一个或多个敏感标签下工作。用户安全许可标签,这种特殊的标签用于确定允许用户工作的最高级别的标签。另外,每位用户都具有最小敏感标签。缺省情况下,登录到多级别桌面会话期间将使用此标签。登录后,用户可以选择在此范围内的其他标签下工作。可以为用户指定 Public(公共)作为最小敏感标签,分配 Confidential: Need to Know(机密:需要知道)作为安全许可。第一次登录时,桌面工作区位于 Public(公共)标签下。在会话过程中,用户可以在 Confidential: Internal Use Only(机密:仅供内部使用)和 Confidential: Need to Know(机密:需要知道)中创建工作区。

图 1-2  典型行业敏感标签

image:图形显示了行业定义的典型标签和安全许可。

在配置有 Trusted Extensions 的系统中,所有主体和对象都具有标签。主体是一个主动实体,通常为进程。进程促使信息在对象之间流动或更改系统状态。对象是包含或接收数据的被动实体,例如数据文件、目录、打印机或其他设备。在某些情况下,进程可以是对象,例如当您对进程使用 kill 命令时。

Figure 1–3 显示了一个典型的多级别 Trusted Extensions 会话。可信窗口条位于顶部。从可信窗口条中调用了 "Trusted Path"(可信路径)菜单。要承担一个角色,请单击用户名来调用角色菜单。底部面板中的工作区切换器显示工作区标签的颜色。底部面板中的窗口列表显示了窗口标签的颜色。

图 1-3  典型的多级别会话

image:屏幕中显示了窗口上的标签、可信窗口条、可信符号、“Trusted Path“(可信路径)菜单、当前用户、工作区和窗口标签以及底部的面板。

容器和标签

Trusted Extensions 使用容器设置标签。容器也称区域全局区域是管理区域,不供用户使用。非全局区域则称为有标签区域。有标签区域可供用户使用。全局区域与用户共享一部分系统文件。这些文件显示在有标签区域中时,其标签为 ADMIN_LOW。用户可以读取但不能更改 ADMIN_LOW 文件的内容。

网络通信通过标签进行限制。缺省情况下,各区域间无法互相通信,因为各个区域的标签互不相同。因此,一个区域无法写入到另一个区域中。

但是,管理员可以配置特定区域,使其能够读取其他区域中的特定目录。其他区域可以位于同一台主机上,或者位于远程系统上。例如,可以通过使用自动挂载服务来挂载较低级别区域中的用户起始目录。此类较低级别起始目录挂载的路径名约定包括区域名称,如下所示:

/zone/name-of-lower-level-zone/home/username

下面显示的终端窗口说明了较低级别起始目录的可见性。如果将自动挂载服务配置为使较低级别区域可读,则登录标签为 Confidential: Internal Use Only(机密:仅供内部使用)的用户即可查看 Public(公共)区域的内容。textfileInfo.txt 文件具有两个版本。Public(公共)区域版本包含可以与公众共享的信息。Confidential: Internal Use Only(机密:仅供内部使用)版本包含仅可在公司内部共享的信息。

图 1-4  从较高级别标签区域查看公共信息

image:终端窗口显示了可以从 “Internal Use Only“(仅供内部使用)区域查看 “Public“(公共)区域的内容。

标签和事务

    Trusted Extensions 软件管理所有尝试进行的安全性相关事务。该软件将主体标签与对象标签进行比较,然后根据哪个标签具有支配地位来允许或禁止事务。如果满足下面两个条件,则认为某个实体的标签可以支配另一个实体的标签:

  • 第一个实体的标签等级组件等于或高于对象等级。

  • 第二个实体的标签中所有的区间都包括在第一个实体的标签中。

如果两个标签具有同一等级和同一组区间,则认为这两个标签是等同的。如果标签等同,则这两个标签可以互相支配。因此,允许进行访问。

如果满足以下条件之一,则认为第一个标签严格支配第二个标签。

  • 第一个标签的等级高于第二个标签的等级

  • 第一个标签的等级等于第二个标签的等级,第一个标签包含第二个标签的区间,并且第一个标签还具有其他区间

如果某个标签严格支配另一个标签,则该标签对受支配的标签具有访问权限。

如果任一标签都不支配另一个标签,则认为这两个标签不相交。不相交的标签之间不允许进行访问。

例如,请参考下图。

image:图形显示了具有两个可能的区间(A 和 B)的 “Top Secret“(绝密)等级。

    可以根据这些组件创建四个标签:

  • TOP SECRET(绝密)

  • TOP SECRET A(绝密 A)

  • TOP SECRET B(绝密 B)

  • TOP SECRET AB(绝密 AB)

TOP SECRET AB(绝密 AB)支配自身并且严格支配其他标签。TOP SECRET A(绝密 A)支配自身并且严格支配 TOP SECRET(绝密)。TOP SECRET B(绝密 B)支配自身并且严格支配 TOP SECRET(绝密)。TOP SECRET A(绝密 A)和 TOP SECRET B(绝密 B)不相交。

在读取事务中,主体的标签必须支配对象的标签。此规则可确保主体的信用级别满足访问对象的要求。即,主体的标签包括被允许来访问对象的所有区间。TOP SECRET A(绝密 A)可以读取 TOP SECRET A(绝密 A)和 TOP SECRET(绝密)数据。同样,TOP SECRET B(绝密 B)可以读取 TOP SECRET B(绝密 B)和 TOP SECRET(绝密)数据。TOP SECRET A(绝密 A)不能读取 TOP SECRET B(绝密 B)数据。TOP SECRET B(绝密 B)也不能读取 TOP SECRET A(绝密 A)数据。TOP SECRET AB(绝密 AB)可以读取所有标签中的数据。

在写入事务中,即主体创建或修改对象时,所得到对象的有标签区域必须等同于主体的有标签区域。不允许从一个区域向其他区域执行写入事务。

在实践中,读取和写入事务中的主体和对象通常具有相同的标签,不必考虑严格支配关系。例如,TOP SECRET A(绝密 A)主体可以创建或修改 TOP SECRET A(绝密 A)对象。在 Trusted Extensions 中,TOP SECRET A(绝密 A)对象位于标签为 TOP SECRET A(绝密 A)的区域中。

下表说明了美国政府标签之间以及一组行业标签之间的支配关系。

表 1-1  Trusted Extensions 中标签关系的示例
标签 1
关系
标签 2
美国政府标签
TOP SECRET AB(绝密 AB)
(严格)支配
SECRET A(秘密 A)
TOP SECRET AB(绝密 AB)
(严格)支配
SECRET A B(秘密 A B)
TOP SECRET AB(绝密 AB)
(严格)支配
TOP SECRET A(绝密 A)
TOP SECRET AB(绝密 AB)
支配(等同于)
TOP SECRET AB(绝密 AB)
TOP SECRET AB(绝密 AB)
不相交于
TOP SECRET C(绝密 C)
TOP SECRET AB(绝密 AB)
不相交于
SECRET C(秘密 C)
TOP SECRET AB(绝密 AB)
不相交于
SECRET A B C(秘密 A B C)
行业标签
Confidential: Restricted(机密:受限)
支配
Confidential: Need to Know(机密:需要知道)
Confidential: Restricted(机密:受限)
支配
Confidential: Internal Use Only(机密:仅供内部使用)
Confidential: Restricted(机密:受限)
支配
Public(公共)
Confidential: Need to Know(机密:需要知道)
支配
Confidential: Internal Use Only(机密:仅供内部使用)
Confidential: Need to Know(机密:需要知道)
支配
Public(公共)
Confidential: Internal(机密:内部)
支配
Public(公共)
Sandbox(沙箱)
不相交于
所有其他标签

在具有不同标签的文件之间传输信息时,如果您有权更改文件的标签,Trusted Extensions 会显示确认对话框。如果您无权进行此操作,Trusted Extensions 将禁止该事务。安全管理员可以为您授予对信息进行升级或降级的权限。有关更多信息,请参见执行可信操作