Freigeben über


ACE-Vererbungsregeln

Das System gibt vererbbare Zugriffssteuerungseinträge (AcEs) gemäß einer Reihe von Vererbungsregeln an untergeordnete Objekte weiter. Das System platziert geerbte ACEs in der daCL (Discretionary Access Control List ) des untergeordneten Elements gemäß der bevorzugten Reihenfolge der ACEs in einer DACL. Das System legt das flag INHERITED_ACE in allen geerbten ACEs fest.

Je nach Kombination von Vererbungsflags unterscheiden sich die acEs, die von Containerobjekten und untergeordneten Objekten geerbt werden. Diese Vererbungsregeln funktionieren sowohl für DACLs als auch für Systemzugriffssteuerungslisten (SACLs) identisch.

Übergeordnetes ACE-Flag Auswirkung auf untergeordnete ACL
Nur OBJECT_INHERIT_ACE Untergeordnete Nichtcontainerobjekte: Als effektive ACE geerbt. Untergeordnete Containerobjekte: Container erben eine nur vererbte ACE, es sei denn, das NO_PROPAGATE_INHERIT_ACE Bitflag ist ebenfalls festgelegt.
Nur CONTAINER_INHERIT_ACE Untergeordnete Nichtcontainerobjekte: Keine Auswirkung auf das untergeordnete Objekt. Untergeordnete Containerobjekte: Das untergeordnete Objekt erbt einen effektiven ACE. Der geerbte ACE ist vererbbar, es sei denn, das NO_PROPAGATE_INHERIT_ACE Bitflag ist ebenfalls festgelegt.
CONTAINER_INHERIT_ACE und OBJECT_INHERIT_ACE Untergeordnete Nichtcontainerobjekte: Als effektive ACE geerbt. Untergeordnete Containerobjekte: Das untergeordnete Objekt erbt einen effektiven ACE. Der geerbte ACE ist vererbbar, es sei denn, das NO_PROPAGATE_INHERIT_ACE Bitflag ist ebenfalls festgelegt.
Keine Vererbungsflags festgelegt Keine Auswirkung auf untergeordnete Container- oder Nichtcontainerobjekte.

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 Sicherheitsbezeichner (SIDs), z. B. CREATOR_OWNER, der entsprechenden SID zu. Wenn es sich bei einem geerbten ACE um einen nur vererbten 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.

In einem Fall, in dem ein Containerobjekt einen ACE erbt, der sowohl für den Container wirksam als auch von seinen Nachfolgern vererbt werden kann, kann der Container zwei ACEs erben. Dies tritt auf, wenn der vererbbare ACE generische Informationen enthält. Der Container erbt einen nur vererbten ACE, der die generischen Informationen enthält, und einen nur effektiven ACE, in dem die generischen Informationen zugeordnet wurden.

Ein objektspezifischer ACE verfügt über einen InheritedObjectType-Member , der eine GUID enthalten kann, um den Objekttyp zu identifizieren, der den ACE erben kann.

Wenn die InheritedObjectType-GUID nicht angegeben wird, sind die Vererbungsregeln für einen objektspezifischen ACE identisch mit denen für einen Standard-ACE.

Wenn die InheritedObjectType-GUID angegeben wird, kann der 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 die DS alle Objekttypen als Container behandelt.