6.1.4 Active Directory中的访问控制
为达到安全目的,管理员可使用访问控制来管理对共享资源的用户访问权。在Active Directory中,访问控制是通过为对象设置不同的访问级别或权限(如“完全控制”、“写入”、“读取”或“拒绝访问”),在对象级别进行管理的。Active Directory 中的访问控制定义了不同的用户可如何使用Active Directory对象。在默认情况下,Active Directory中对象的权限被设置为最安全的设置。在Active Directory对象上定义访问控制权限的元素包括安全描述符、对象继承和用户身份验证。
1.安全描述符
安全描述符是一种数据结构,包含与受保护的对象相关联的安全信息。安全描述符包括有关对象所有者、能访问对象的人员及其访问方式,以及受审核的访问类型等方面的信息。访问控制权限被指派给共享资源和Active Directory对象,以控制不同的用户如何访问每个对象。共享对象(或称共享资源)是为了让一个或多个用户通过网络使用的对象,包括文件、打印机、文件夹和服务。共享对象和Active Directory对象都在安全描述符中存储访问控制权限。
安全描述符包含两个访问控制列表(ACL),用于指派和跟踪每个对象的安全信息,它们是:随机访问控制列表(DACL)和系统访问控制列表(SACL)。
1)随机访问控制列表(DACL)
随机访问控制列表(DACL)是对象的安全描述符的一部分,它能赋予或拒绝特定用户和组对该对象的访问权。只有对象的所有者才能更改在DACL中赋予或拒绝的权限,这就表示此对象的所有者可以自由访问该对象。
DACL标识已被指派或拒绝对某个对象的访问权限的用户和组。如果DACL未明确标识某个用户或用户所属的任何组,则该用户将被拒绝访问此对象。在默认情况下,DACL由对象的所有者或创建此对象的人控制,它包含决定此对象的用户访问权的访问控制项(ACE)。
2)系统访问控制列表(SACL)
系统访问控制列表(SACL)也是对象的安全描述符的一部分,指定了每个用户或组中要审核的事件。审核事件的例子是文件访问、登录尝试和系统关闭。
SACL标识当其成功访问或未能访问某个对象时要审核的用户和组。审核可用来监视与系统或网络安全相关的事件、标识违反安全情况,以及确定任何损害的范围和位置。在默认情况下,SACL由对象的所有者或创建此对象的人控制。SACL包含访问控制项(ACE),决定是否记录用户使用给定权限(例如,“完全控制”和“读取”)访问对象时的成功或失败尝试。
要使用“Active Directory用户和计算机”管理工具查看Active Directory对象的DACL和SACL,可执行【查看】→【高级功能】菜单操作,然后在对象属性对话框中选择“安全”选项卡,如图6-1所示。在这里就可以查看对象的DACL了。SACL的查看可通过在图6-1所示对话框中单击【高级】按钮,在打开的对话框选择“审核”选项卡进行,如图6-2所示。还可以使用DSACLS支持工具来管理Active Directory中的访问控制列表。详细信息,请参阅本章后面的“Active Directory支持工具”。
图6-1 Active Directory对象属性对话框“安全”选项卡 图6-2 对象的高级安全设置“审核”选项卡
默认情况下,DACL和SACL与每个Active Directory对象关联,这样可减少恶意用户对网络的攻击或域用户的任何意外错误对网络的影响。但是,如果恶意用户获得了具有管理凭据的任何账户的用户名和密码,他的林就会受到攻击的威胁。因此,可考虑重命名或禁用默认管理员账户,并遵循最佳操作中所描述的最佳操作来执行。
2.对象继承
默认情况下,Active Directory对象从位于其父容器对象中的安全描述符继承ACE。继承可以使Active Directory中某个容器对象中定义的访问控制信息应用到任何次对象(包括其他容器及其对象)的安全描述符。这样就消除了每次创建子对象时都要应用权限的需要,必要时,可以更改继承的权限。然而,作为最佳操作,应避免更改Active Directory对象的默认权限或继承设置。更改权限继承的方法就是不要选择“允许父项的继承权限传播到该对象和所有子对象。包括那些在此明确定义的项目。”复选框,这与NTFS访问权限的继承类似。
3.用户身份验证
Active Directory还验证和授权用户、组和计算机访问网络上的对象。本地安全机构(LSA)是负责本地计算机上所有交互式用户身份验证和授权服务的安全子系统。LSA还可用于处理在Active Directory中通过Kerberos V5协议或NTLM协议提出的身份验证请求。
一旦在Active Directory中确认某个用户的标识之后,进行身份验证的域控制器上的LSA将生成一个用户访问令牌,并使某个安全ID(SID)与该用户相关联。
1)访问令牌
当用户进行身份验证时,LSA为该用户创建一个安全访问令牌。访问令牌包含用户的名称、用户所属的组、用户的SID,以及用户所属组的所有SID。如果在已发出用户存取令牌之后将某个用户添加到组中,则用户必须注销并再次登录之后才能更新访问令牌。
2)安全ID(SID)
Active Directory在创建SID时自动将其指派为安全主体对象。安全主体是Active Directory中的账户,可为其指派权限,如计算机、组或用户账户。当SID颁发给经过身份验证的用户之后,它就附加在该用户的访问令牌上。
访问令牌中的信息用于确定用户在试图访问对象时的访问级别。访问令牌中的SID将与组成该对象的DACL的SID列表相比较,以确保用户有足够的权限访问该对象。这是因为访问控制过程按SID而不是按名称来标识用户账户。
|
当域控制器为用户提供访问令牌时,如果本地域组对于域控制器的域是本地的,那么该访问令牌只包含有关本地域组中成员身份的信息。对于复制到全局编录中的域目录对象,这种情况需要特定的安全考虑。
全局编录的复制可确保整个林中的用户能够快速访问有关林中每个对象的信息。构成全局编录的默认属性提供了最常搜索的属性的基线,这些属性作为正常Active Directory复制的一部分被复制到全局编录中。
全局编录的复制拓扑是由信息一致性检查器(KCC)自动生成的。但是,全局编录仅复制到已被指派为全局编录的其他域控制器。全局编录复制既受标记为包含到全局编录中的属性的影响,又受通用组成员身份的影响。 |