Windows NT安全模式的原理 |
|
| 2004-05-25 金桥 |
| |
在微软开始 Windows NT的开发研制之前,就将其定位达到 C2安全级。C2安全级是安全体系黄皮书中关于安全等级的一个划分级别,它是与操作系统的安全模式相关的一些要求的集合。其中,安全模式中最重要的方面是对系统中的对象的存取访问。
尽管Windows NT达到了C2安全级认证,但它仅是作为在一个没有软驱没有网络连接的“单独”的机器上运行的操作系统获得的认证。因而微软公司继续在 Windows NT的安全模式上下功夫,使其成为一个非常安全的商业网络服务器操作系统。Windows NT的安全模式是可扩充的,这意味着应用程序可以很容易地扩充进新的安全特性。一个确保NT可扩充性的主要因素是它达到了C2级安全性所要求的对象访问权限。例如,Windows NT 4.0安全模式中不包括对 KERBEROS的支持,但 Windows NT 5.0中又包含它。NT开发小组要做的不是重写整个安全模式以达到对 KERBEROS的支持,而只是将 KERBEROS接口加进 Windows NT 5.0所提供的安全访问接口列表中即可,如图1所示:
每个Windows NT对象都有自己的安全属性,以管理用户对该对象的访问。Windows NT在Windows结构中将安全属性称作安全描述符。安全描述符由两个部分组成:访问控制列表(C2级所要求的)和对象自身的一些信息。
访问控制列表(ACL)包含了哪个用户或哪个工作组可以访问对象以及用户或工作组以什么权限访问对象。工作组是一些相互联系密切的用户或因业务需要联系的用户的群体Windows NT缺省地提供了一些工作组,包括 EVERYONE,POWER USERS和 ADMINISTRATORS等。我们在后面将一一讨论。
请注意:NT支持的访问级别或类型是相对于每个工作组而言的,这一点很重要。例如,Everyone组或许只对一个对象具有只读权限。而 Power Users组或许就具有读、写、复制、删除一个对象的权限。如前所述,操作系统对于谁访问哪个对象,怎样访问该对象提供了一个特定的控制。Windows NT将安全描述符的访问控制列表又分为两个部分:选择访问控制列表和系统访问控制列表,它们将对一个对象从两种安全限制的类型方面进行描述。每个单独用户使用选择访问控制列表对一个对象存取,而系统对象或系统服务使用系统访问控制列表对对象进行存取。
选择访问控制列表是常用来对一个对象进行存取或修改的,因为操作系统将维持系统访问控制列表。
选择访问控制列表为每个系统中的每个注册的用户和工作组都提供了一个入口。操作系统将这些入口存在ACL中的访问控制入口中。访问控制入口包含了每个用户和工作组对一个对象的存取权限。因此,安全描述符包含了系统对每个对象进行访问的最重要的信息。图2显示了安全描述符的基本结构:
当Windows NT用户或服务创建一个对象时,Windows NT总紧接着创建一个该对象的安全描述符。如果一个用户或服务没有同任何一个对象访问存取属性相连,则NT将为该用户创建无存取控制列选项的访问控制列表,也就是说:Windows NT不会为一个对象分配一个专门的许可权限。
由于C2安全级的需要,Windows NT操作系统中存在这么一个策略——“不被允许就是禁止”,因此,如果Windows NT创建了一个不带任何存取极限的对象,则没有任何一个用户可以访问该对象。当Windows NT加入对一个对象的特定许可后,只有那些在访问控制列表中列出的用户,才可以对该对象进行访问。
为了让读者更好地掌握整个安全模式,我们将其分为4个部分。表1显示了Windows NT安全模式的基本部分。
显而易见,本地安全性授权控制了大多数的NT 安全模式的管理工作。在本地安全性授权需要从安全性帐号管理器或安全性引用监视器中取得信息时或者要通过用户接口将结果返回给网管人员时,本地安全性授权将调用安全性帐号管理器及安全性引用监视器部分。图3显示了安全模式各部分的调用关系。
|
|
| |
|
发表评论
推荐文章
关闭窗口
|
|
|
|