Freigeben über


ACE-Vererbungsregeln

Das System verteilt vererbbare Zugriffssteuerungseinträge (ACEs) gemäß einer Reihe von Vererbungsrichtlinien an untergeordnete Objekte. Das System platziert vererbte ACEs in der freigegebenen Zugriffssteuerungsliste (Discretionary Access Control List, DACL) des untergeordneten Elements gemäß der bevorzugten Reihenfolge von ACEs in einer DACL.

Die von Container- und Nicht-Container-Objekten geerbten ACEs unterscheiden sich abhängig von der jeweiligen Kombination der Vererbungsflags. Diese Vererbungsregeln funktionieren sowohl für DACLs als auch für Systemzugriff-Steuerungslisten (SACLs).

ACE-Flag des übergeordneten Elements Auswirkungen auf die ACL des untergeordneten Elements
Nur OBJECT_INHERIT_ACE Untergeordnete Nicht-Container-Objekte: vererbt als effektiver Zugriffsteuerungseintrag (ACE). Untergeordnete Containerobjekte: Container erben einen nur vererbbaren ACE, es sei denn, das Bit-Flag NO_PROPAGATE_INHERIT_ACE ist ebenfalls festgelegt.
Nur CONTAINER_INHERIT_ACE Untergeordnete Nicht-Container-Objekte: keine Auswirkungen auf das untergeordnete Objekt. Untergeordnete Containerobjekte: Das untergeordnete Objekt erbt einen effektiven Zugriffsteuerungseintrag (ACE). Der geerbte ACE ist vererbbar, es sei denn, das Bit-Flag NO_PROPAGATE_INHERIT_ACE ist ebenfalls festgelegt.
CONTAINER_INHERIT_ACE und OBJECT_INHERIT_ACE Untergeordnete Nicht-Container-Objekte: vererbt als effektiver Zugriffsteuerungseintrag (ACE). Untergeordnete Containerobjekte: Das untergeordnete Objekt erbt einen effektiven Zugriffsteuerungseintrag (ACE). Der geerbte ACE ist vererbbar, es sei denn, das Bit-Flag NO_PROPAGATE_INHERIT_ACE ist ebenfalls festgelegt.
Keine Vererbungsflags festgelegt Keine Auswirkung auf Kindercontainer oder Nichtcontainer-Objekte.

Wenn ein geerbter ACE ein effektiver ACE für das untergeordnete Objekt ist, ordnet das System alle generischen Rechte den spezifischen Rechten für das untergeordnete Objekt zu. Ebenso ordnet das System generische Sicherheits-IDs (SIDs), z. B. CREATOR_OWNER, der entsprechenden SID zu. Wenn es sich bei einem geerbten ACE um einen nur vererbbaren ACE handelt, bleiben alle generischen Rechte oder generischen SIDs unverändert, sodass sie entsprechend zugeordnet werden können, wenn der ACE von der nächsten Generation untergeordneter Objekte geerbt wird.

Für einen Fall, in dem ein Containerobjekt eine ACE erbt, die sowohl für den Container als auch für seine Nachfolger gültig ist, kann der Container zwei ACEs erben. Dies tritt auf, wenn die vererbbare ACE generische Informationen enthält. Der Container erbt einen nur vererbbaren ACE, der die generischen Informationen enthält, und einen nur effektiven ACE, in dem die generischen Informationen zugeordnet wurden.

Ein objektspezifisches ACE verfügt über ein InheritedObjectType--Element, das eine GUID enthalten kann, um den Typ des Objekts zu identifizieren, das die ACE erben kann.

Wenn die InheritedObjectType GUID nicht angegeben ist, sind die Vererbungsregeln für eine objektspezifische ACE identisch mit einer Standard-ACE.

Wenn die InheritedObjectType GUID angegeben ist, kann die ACE von Objekten vererbt werden, die der GUID entsprechen, wenn OBJECT_INHERIT_ACE festgelegt ist, und von Containern, die der GUID entsprechen, wenn CONTAINER_INHERIT_ACE festgelegt ist. Beachten Sie, dass derzeit nur DS-Objekte objektspezifische ACEs unterstützen und der DS alle Objekttypen als Container behandelt.