共用方式為


ACE 繼承規則

系統會根據一組繼承規則,自動將可繼承 訪問控制專案 (ACE) 傳播至子物件。 系統會根據 DACL 慣用的 ACE 順序,將繼承的 ACE 放在子系的 選擇性存取控制清單中 (DACL) 中。

容器和非容器子物件繼承的 ACE 會根據繼承標誌的不同組合而有所不同。 這些繼承規則適用於 DACL 和 系統存取控制清單 (SCL)。

父 ACE 旗標 對子 ACL 的影響
僅限OBJECT_INHERIT_ACE 非容器子對象:繼承為有效的 ACE。 容器子物件:除非同時已設定 NO_PROPAGATE_INHERIT_ACE 標誌,否則容器將繼承僅限繼承的 ACE。
僅限CONTAINER_INHERIT_ACE 非容器子物件:對子物件沒有影響。 容器子物件:子物件會繼承有效的 ACE。 若未設置NO_PROPAGATE_INHERIT_ACE位元標記,則繼承的ACE是可以被繼承的。
CONTAINER_INHERIT_ACE和OBJECT_INHERIT_ACE 非容器子對象:繼承為有效的 ACE。 容器子物件:子物件會繼承有效的 ACE。 除非同時設定NO_PROPAGATE_INHERIT_ACE位旗標,否則繼承的 ACE 是可繼承的。
未設定繼承旗標 對子容器或非容器物件沒有任何影響。

如果繼承的 ACE 是子物件的有效 ACE,系統會將任何泛型許可權對應至子物件的特定許可權。 同樣地,系統會將一般 安全性標識碼(例如CREATOR_OWNER)對應至適當的 SID。 如果繼承的 ACE 是僅限繼承的 ACE,則任何泛型許可權或泛型 SID 都會保持不變,以便在下一代子物件繼承 ACE 時適當地對應它們。

如果容器物件繼承的 ACE 在容器上有效且可被其子系繼承,則容器可能會繼承兩個 ACE。 如果可繼承的 ACE 包含泛型資訊,就會發生這種情況。 容器會繼承唯一的 ACE,其中包含泛型資訊,以及泛型資訊已對應的唯一 ACE。

物件特定的 ACE 具有可包含 GUID 的 InheritedObjectType 成員,以識別可繼承 ACE 的物件類型。

如果未指定 InheritedObjectType GUID,則物件特定 ACE 的繼承規則與標準 ACE 的繼承規則相同。

如果指定了 InheritedObjectType GUID,則如果已設定 OBJECT_INHERIT_ACE,則 ACE 可由符合 GUID 的物件繼承,如果設定CONTAINER_INHERIT_ACE,則由符合 GUID 的容器繼承。 請注意,目前只有 DS 物件支援物件特定的 ACE,而 DS 會將所有物件類型視為容器。