跳过导航链接 | |
退出打印视图 | |
Oracle Solaris Trusted Extensions 用户指南 Oracle Solaris 10 8/11 Information Library (简体中文) |
通过自主访问控制和强制访问控制两项功能,Trusted Extensions 可以控制哪些用户可以访问哪些信息。
自主访问控制 (discretionary access control, DAC) 是一种软件机制,用于控制用户对文件和目录的访问。DAC 允许所有者根据自己的判断来设置对文件和目录的保护。DAC 的两种形式是 UNIX 权限位和访问控制列表 (access control list, ACL)。
通过权限位,所有者可以按所有者、组和其他用户来设置读、写和执行保护。在传统的 UNIX 系统中,超级用户或 root 用户可以覆盖 DAC 保护。而 Trusted Extensions 软件只允许管理员和授权用户覆盖 DAC。ACL 提供更为精细的访问控制。通过 ACL,所有者可以为特定的用户和特定的组单独指定权限。有关更多信息,请参见《System Administration Guide: Security Services》中的第 6 章 "Controlling Access to Files (Tasks)"。
强制访问控制 (mandatory access control, MAC) 是一种基于标签关系的、由系统强制执行的访问控制机制。系统将敏感标签与创建用来执行程序的所有进程关联起来。MAC 策略使用这种标签来进行访问控制决策。一般情况下,进程无法存储信息,也不能与其他进程进行通信,除非目标标签等同于该进程的标签。MAC 策略允许进程从同一级别标签对象读取数据,或者从较低级别标签对象读取数据。但是,管理员可以创建一个其中仅存在很少较低级别对象或没有较低级别对象的有标签环境。
缺省情况下,MAC 策略对用户不可见。一般用户必须具有对对象的 MAC 访问权限,才能看到这些对象。在任何情况下,用户都不能采取违背 MAC 策略的操作。
等级,也称级别
此组件表示有层次的安全性级别。对用户来说,等级代表信任的度量;而对数据来说,等级则代表其需要的保护程度。
在美国政府中,等级分为 TOP SECRET(绝密)、SECRET(秘密)、CONFIDENTIAL(机密)和 UNCLASSIFIED(未分类)。行业等级不作为标准化的等级。一家公司可以建立唯一的等级。有关示例,请参见图 1-3。左侧的术语代表各个等级,右侧的术语则代表各个区间。
区间代表分组,例如工作组、部门、项目或主题。一个等级不一定要具有区间。在图 1-3 中,Confidential(机密)等级具有三个专有的区间。Public(公共)等级和 Max Label(最大标签)则不具有区间。如图所示,该组织定义了五个标签。
图 1-3 典型行业敏感标签
Trusted Extensions 维护两种类型的标签:敏感标签和安全许可。系统可以许可用户在一个或多个敏感标签下工作。用户安全许可标签,这种特殊的标签用于确定允许用户工作的最高级别的标签。另外,每位用户都具有最小敏感标签。缺省情况下,登录到多级桌面会话期间将使用此标签。登录后,用户可以选择在此范围内的其他标签下工作。可以为用户指定 Public(公共)作为最小敏感标签,分配 Confidential: Need to Know(机密:需要知道)作为安全许可。第一次登录时,桌面工作区位于 Public(公共)标签下。在会话过程中,用户可以在 Confidential: Internal Use Only(机密:仅供内部使用)和 Confidential: Need to Know(机密:需要知道)中创建工作区。
在配置有 Trusted Extensions 的系统中,所有主体和对象都具有标签。主体是一个主动实体,通常为进程。进程促使信息在对象之间流动或更改系统状态。对象是包含或接收数据的被动实体,例如数据文件、目录、打印机或其他设备。在某些情况下,进程可以是对象,例如当您对进程使用 kill 命令时。
标签可以显示在窗口标题栏中和可信窗口条中,可信窗口条是屏幕上的特殊窗口条。图 1-4 显示了 Trusted CDE 中典型的多级 Trusted Extensions 会话。图中标示了标签和可信窗口条。
图 1-4 典型 Trusted CDE 会话
图 1-5 显示了 Trusted JDS 系统中的典型多级 Trusted Extensions 会话。可信窗口条位于顶部。从可信窗口条中调用了 "Trusted Path"(可信路径)菜单。要承担一个角色,请单击用户名来调用角色菜单。底部面板中的工作区切换器显示工作区标签的颜色。底部面板窗口列表中的窗口图标则显示每个窗口标签的颜色。
图 1-5 典型 Trusted JDS 会话
Trusted Extensions 使用容器设置标签。容器也称区域。全局区域是管理区域,不供用户使用。非全局区域则称为有标签区域。有标签区域可供用户使用。全局区域与用户共享一部分系统文件。这些文件显示在有标签区域中时,其标签为 ADMIN_LOW。
网络通信通过标签进行限制。缺省情况下,各区域间无法互相通信,因为各个区域的标签互不相同。因此,一个区域无法写入到另一个区域中。
但是,管理员可以配置特定区域,使其能够读取其他区域中的特定目录。其他区域可以位于同一台主机上,或者位于远程系统上。例如,可以通过使用自动挂载服务来挂载较低级别区域中的用户起始目录。此类较低级别起始目录挂载的路径名约定包括区域名称,如下所示:
/zone/name-of-lower-level-zone/home/username
下面显示的终端窗口说明了较低级别起始目录的可见性。如果将自动挂载服务配置为使较低级别区域可读,则登录标签为 Confidential: Internal Use Only(机密:仅供内部使用)的用户即可查看 Public(公共)区域的内容。textfileInfo.txt 文件具有两个版本。Public(公共)区域版本包含可以与公众共享的信息。Confidential: Internal Use Only(机密:仅供内部使用)版本包含仅可在公司内部共享的信息。
图 1-6 从较高级别标签区域查看公共信息
Trusted Extensions 软件管理所有尝试进行的安全性相关事务。该软件将主体标签与对象标签进行比较,然后根据哪个标签具有支配地位来允许或禁止事务。如果满足下面两个条件,则认为某个实体的标签可以支配另一个实体的标签:
第一个实体的标签等级组件等于或高于对象等级。
第二个实体的标签中所有的区间都包括在第一个实体的标签中。
如果两个标签具有同一等级和同一组区间,则认为这两个标签是等同的。如果标签等同,则这两个标签可以互相支配。因此,允许进行访问。
如果满足以下条件之一,则认为第一个标签严格支配第二个标签。
第一个标签的等级高于第二个标签的等级
第一个标签的等级等于第二个标签的等级,第一个标签包含第二个标签的区间,并且第一个标签还具有其他区间
如果某个标签严格支配另一个标签,则该标签对受支配的标签具有访问权限。
如果任一标签都不支配另一个标签,则认为这两个标签不相交。不相交的标签之间不允许进行访问。
可以根据这些组件创建四个标签:
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 中标签关系的示例
|
在具有不同标签的文件之间传输信息时,如果您有权更改文件的标签,Trusted Extensions 会显示确认对话框。如果您无权进行此操作,Trusted Extensions 将禁止该事务。安全管理员可以为您授予对信息进行升级或降级的权限。有关更多信息,请参见执行可信操作。
作为用户,您负责设置权限来保护您的文件和目录。执行后用以设置权限的操作使用一种称为自主访问控制 (discretionary access control, DAC) 的机制。您可以通过以下方法查看文件和目录的权限:使用 ls -l 命令或者使用文件管理器(如第 3 章中所述)。
强制访问控制 (mandatory access control, MAC) 由系统自动强制执行。如果您有权对带标签的信息进行升级或降级,则您对确保更改信息级别的需要是否合法负有重大责任。
保护数据的另一方面涉及电子邮件。切勿按照来自某位管理员的电子邮件中收到的说明进行操作。例如,如果按照电子邮件中的说明将口令更改为特定的值,将导致发件人可以登录到您的帐户。在受限制的情况下,您可以在按说明进行操作之前先独立验证这些说明。