struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE (winnt.h)
La struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE definisce una voce di controllo di accesso (ACE) per un elenco di controllo di accesso di sistema (SACL). ACE può controllare l'accesso a un oggetto o a oggetti secondari, ad esempio set di proprietà o proprietà. Ace contiene un set di diritti di accesso, un GUID che identifica il tipo di oggetto o sottooggetto e un IDENTIFICATORe di sicurezza (SID) che identifica il trustee per il quale il sistema controlla l'accesso. La voce ACE contiene anche un GUID e un insieme di flag che controllano l'ereditarietà della voce ACE da parte degli oggetti figlio.
Quando viene chiamata la funzione AuthzAccessCheck , ogni struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE contenuta nell'elenco DACL di una struttura SECURITY_DESCRIPTOR passata tramite un puntatore alla funzione AuthzAccessCheck richiama una chiamata alla funzione AuthzAccessCheckCallback definita dall'applicazione, in cui viene passato un puntatore alla struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE trovato nel parametro pAce .
Sintassi
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;
Members
Header
ACE_HEADER struttura che specifica le dimensioni e il tipo di ACE. Contiene flag che controllano l'ereditarietà dell'ace dagli oggetti figlio. La struttura contiene anche flag che indicano se ace controlla i tentativi di accesso riusciti, i tentativi di accesso non riusciti o entrambi. Il membro AceType della struttura ACE_HEADER deve essere impostato su SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE e il membro AceSize deve essere impostato sul numero totale di byte allocati per la struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE .
Mask
Un ACCESS_MASK che specifica i diritti di accesso controllati dal sistema per i tentativi di accesso da parte del trustee.
Flags
Set di flag di bit che indicano se i membri ObjectType e InheritedObjectType contengono GUID. Questo membro può essere una combinazione dei valori seguenti. Impostare tutti i bit non definiti su zero.
Valore | Significato |
---|---|
|
Il membro ObjectType contiene un GUID. |
|
Il membro InheritedObjectType contiene un GUID. |
ObjectType
Struttura GUID che identifica un set di proprietà, una proprietà, un diritto esteso o un tipo di oggetto figlio.
Questo membro è valido solo se il bit ACE_OBJECT_TYPE_PRESENT è impostato nel membro Flags . In caso contrario, ObjectType viene ignorato.
Lo scopo di questo GUID dipende dai diritti di accesso specificati nel membro Mask .
Questo membro può essere uno dei valori seguenti.
InheritedObjectType
Struttura GUID che identifica il tipo di oggetto figlio che può ereditare l'ACE.
Questo membro è valido solo se il bit ACE_INHERITED_OBJECT_TYPE_PRESENT è impostato nel membro Flags . Se tale bit non è impostato, InheritedObjectType viene ignorato e tutti i tipi di oggetti figlio possono ereditare ace. In entrambi i casi, l'ereditarietà è controllata anche dai flag di ereditarietà nel ACE_HEADER, nonché da qualsiasi protezione contro l'ereditarietà inserita negli oggetti figlio.
SidStart
Primo DWORD del SID di un trustee. I byte rimanenti del SID vengono archiviati in memoria contigua dopo il membro SidStart . Questo SID può essere aggiunto con i dati dell'applicazione.
Commenti
Se non viene specificato né il GUID ObjectType né InheritedObjectType , la struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE ha la stessa semantica della struttura SYSTEM_AUDIT_CALLBACK_ACE . In tal caso, usare la struttura SYSTEM_AUDIT_CALLBACK_ACE perché è più piccola ed efficiente.
Un elenco di controllo di accesso che contiene una struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE deve specificare il numero di revisione ACL_REVISION_DS nella struttura ACE_HEADER .
Quando viene creata una struttura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE , è necessario allocare memoria sufficiente per contenere le strutture GUID nei membri ObjectType e InheritedObjectType , se ne esiste uno o entrambi, nonché per contenere il SID completo del trustee nel membro SidStart e la memoria contigua che lo segue.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Intestazione | winnt.h (include Windows.h) |