SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur (winnt.h)
Die SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur definiert einen Zugriffssteuerungseintrag (Access Control Entry , ACE) für eine Systemzugriffssteuerungsliste (SACL ). Der ACE kann den Zugriff auf ein Objekt oder Unterobjekte überwachen, z. B. Eigenschaftensätze oder Eigenschaften. Der ACE enthält einen Satz von Zugriffsrechten, eine GUID, die den Typ des Objekts oder Unterobjekts identifiziert, und eine Sicherheits-ID (SID), die den Treuhänder identifiziert, für den das System den Zugriff überwacht. Der ACE enthält außerdem eine GUID und verschiedene Flags, die die Vererbung des ACE an untergeordnete Objekte steuern.
Wenn die AuthzAccessCheck-Funktion aufgerufen wird, ruft jede SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur , die in der DACL einer SECURITY_DESCRIPTOR-Struktur enthalten ist, die über einen Zeiger auf die AuthzAccessCheckCheck-Funktion übergeben wird, einen Aufruf der anwendungsdefinierten AuthzAccessCheckCallback-Funktion auf, in der ein Zeiger auf die gefundene SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur im pAce-Parameter übergeben wird.
Syntax
typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD Flags;
GUID ObjectType;
GUID InheritedObjectType;
DWORD SidStart;
} SYSTEM_AUDIT_CALLBACK_OBJECT_ACE, *PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
Member
Header
ACE_HEADER Struktur, die die Größe und den Typ von ACE angibt. Es enthält Flags, die die Vererbung des ACE durch untergeordnete Objekte steuern. Die Struktur enthält auch Flags, die angeben, ob der ACE erfolgreiche Zugriffsversuche, fehlgeschlagene Zugriffsversuche oder beides überwacht. Der AceType-Member der ACE_HEADER-Struktur sollte auf SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE und das AceSize-Element auf die Gesamtzahl der Bytes festgelegt werden, die für die SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur zugeordnet sind.
Mask
Eine ACCESS_MASK , die die Zugriffsrechte angibt, die das System auf Zugriffsversuche durch den Treuhänder überwacht.
Flags
Ein Satz von Bitflags, die angeben, ob die Member ObjectType und InheritedObjectType GUIDs enthalten. Dieser Member kann eine Kombination der folgenden Werte sein. Legen Sie alle undefinierten Bits auf 0 (null) fest.
Wert | Bedeutung |
---|---|
|
Das ObjectType-Element enthält eine GUID. |
|
Das InheritedObjectType-Element enthält eine GUID. |
ObjectType
Eine GUID-Struktur , die einen Eigenschaftensatz, eine Eigenschaft, eine erweiterte Rechte oder einen Typ untergeordneter Objekte identifiziert.
Dieser Member ist nur gültig, wenn das ACE_OBJECT_TYPE_PRESENT Bit im Flags-Element festgelegt ist. Andernfalls wird ObjectType ignoriert.
Der Zweck dieser GUID hängt von den im Mask-Element angegebenen Zugriffsrechten ab.
Dieser Member kann einer der folgenden Werte sein.
InheritedObjectType
Eine GUID-Struktur , die den Typ des untergeordneten Objekts angibt, das den ACE erben kann.
Dieser Member ist nur gültig, wenn das ACE_INHERITED_OBJECT_TYPE_PRESENT Bit im Flags-Element festgelegt ist. Wenn dieses Bit nicht festgelegt ist, wird InheritedObjectType ignoriert, und alle Typen untergeordneter Objekte können den ACE erben. In beiden Fällen wird die Vererbung auch durch die Vererbungsflags im ACE_HEADER sowie durch jeglichen Schutz vor Vererbung für die untergeordneten Objekte gesteuert.
SidStart
Das erste DWORD der SID eines Treuhänders. Die verbleibenden Bytes der SID werden im zusammenhängenden Speicher nach dem SidStart-Element gespeichert. Diese SID kann mit Anwendungsdaten angefügt werden.
Hinweise
Wenn weder objectType noch InheritedObjectType GUID angegeben wird, weist die SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur dieselbe Semantik wie die SYSTEM_AUDIT_CALLBACK_ACE-Struktur auf. Verwenden Sie in diesem Fall die SYSTEM_AUDIT_CALLBACK_ACE-Struktur , da sie kleiner und effizienter ist.
Eine ACL, die eine SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur enthält, muss die ACL_REVISION_DS Revisionsnummer in der ACE_HEADER-Struktur angeben.
Wenn eine SYSTEM_AUDIT_CALLBACK_OBJECT_ACE-Struktur erstellt wird, muss ausreichend Arbeitsspeicher zugewiesen werden, um die GUID-Strukturen in ObjectType - und InheritedObjectType-Membern aufzunehmen, sofern eine oder beide vorhanden sind, sowie die vollständige SID des Vertrauenshänders im SidStart-Member und den darauf folgenden zusammenhängenden Arbeitsspeicher aufzunehmen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Kopfzeile | winnt.h (windows.h einschließen) |