新对象的 SACL

系统使用以下算法为大多数类型的新安全对象生成 SACL:

  1. 对象的 SACL 是由对象的创建者指定的 安全描述符 中的 SACL。 系统会将任何可继承的 ACE 合并到指定的 SACL 中,除非在安全描述符的控制位中设置了SE_SACL_PROTECTED位。 即使设置了SE_SACL_PROTECTED位,父对象的SYSTEM_RESOURCE_ATTRIBUTE_ACEs和SYSTEM_SCOPED_POLICY_ID_ACEs也会合并到新对象。
  2. 如果创建者未指定安全描述符,系统会从可继承的 ACE 生成对象的 SACL。
  3. 如果没有指定或继承的 SACL,则对象没有 SACL。

若要为新对象指定 SACL,对象的创建者必须启用SE_SECURITY_NAME 特权 。 如果新对象的指定 SACL 仅包含SYSTEM_RESOURCE_ATTRIBUTE_ACEs,则不需要SE_SECURITY_NAME特权。 如果对象的 SACL 是从继承的 ACE 生成的,则创建者不需要此特权。

系统使用不同的算法为新的 Active Directory 对象生成 SACL。 有关详细信息,请参阅 如何对新目录对象设置安全描述符