Funzione AddAuditAccessAceEx (securitybaseapi.h)

La funzione AddAuditAccessAceEx aggiunge una voce di controllo di accesso di sistema (ACE) alla fine di un elenco di controllo di accesso del sistema (SACL).

Sintassi

BOOL AddAuditAccessAceEx(
  [in, out] PACL  pAcl,
  [in]      DWORD dwAceRevision,
  [in]      DWORD AceFlags,
  [in]      DWORD dwAccessMask,
  [in]      PSID  pSid,
  [in]      BOOL  bAuditSuccess,
  [in]      BOOL  bAuditFailure
);

Parametri

[in, out] pAcl

Puntatore a un SACL. La funzione AddAuditAccessAceEx aggiunge un ACE di controllo di sistema a questo SACL. L'ACE è sotto forma di una struttura SYSTEM_AUDIT_ACE .

[in] dwAceRevision

Specifica il livello di revisione dell'oggetto SACL da modificare. Questo valore può essere ACL_REVISION o ACL_REVISION_DS. Usare ACL_REVISION_DS se SACL contiene aces specifici dell'oggetto.

[in] AceFlags

Set di flag di bit che controllano l'ereditarietà ACE e il tipo di tentativi di accesso di controllare. La funzione imposta questi flag nel membro AceFlags della struttura ACE_HEADER del nuovo ACE. Questo parametro può essere una combinazione dei valori seguenti.

Valore Significato
CONTAINER_INHERIT_ACE
L'ACE viene ereditato dagli oggetti contenitore.
FAILED_ACCESS_ACE_FLAG
Se si imposta questo flag o si specifica TRUE per il parametro bAuditFailure , i tentativi di utilizzo dei diritti di accesso specificati causano la generazione di un record di controllo nel registro eventi di sicurezza.
INHERIT_ONLY_ACE
L'ACE non si applica all'oggetto a cui viene assegnato l'elenco di controllo di accesso , ma può essere ereditato dagli oggetti figlio.
INHERITED_ACE
Indica un ACE ereditato. Questo flag consente alle operazioni che modificano la sicurezza in un albero di oggetti per modificare gli ACL ereditati, senza modificare gli ACL applicati direttamente all'oggetto.
NO_PROPAGATE_INHERIT_ACE
I bit di OBJECT_INHERIT_ACE e CONTAINER_INHERIT_ACE non vengono propagati a un ACE ereditato.
OBJECT_INHERIT_ACE
L'ACE viene ereditato da oggetti noncontainer.
SUCCESSFUL_ACCESS_ACE_FLAG
Se si imposta questo flag o si specifica TRUE per il parametro bAuditSuccess , l'uso dei diritti di accesso specificati causa la generazione di un record di controllo nel registro eventi di sicurezza.

[in] dwAccessMask

Set di flag di bit che usano il formato ACCESS_MASK per specificare i diritti di accesso che i nuovi controlli ACE per l'identificatore di sicurezza specificato (SID).

[in] pSid

Puntatore a un SID che identifica la sessione di accesso , gruppo o utente per cui il nuovo controllo ACE accede.

[in] bAuditSuccess

Specifica se l'uso corretto dei diritti di accesso specificati causa la generazione di un record di controllo nel registro eventi di sicurezza. Se questo flag è TRUE o se il parametro AceFlags specifica il flag di SUCCESSFUL_ACCESS_ACE_FLAG, il sistema registra tentativi di accesso riusciti; in caso contrario, non lo fa.

[in] bAuditFailure

Specifica se i tentativi non riusciti di usare i diritti di accesso specificati causano la generazione di un record di controllo nel registro eventi di sicurezza. Se questo flag è TRUE o se il parametro AceFlags specifica il flag di FAILED_ACCESS_ACE_FLAG, i record di sistema non sono riusciti a tentare di accesso; in caso contrario, non lo fa.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError. Di seguito sono riportati i valori di errore possibili.

Codice restituito Descrizione
ERROR_ALLOTTED_SPACE_EXCEEDED
Il nuovo ACE non rientra nell'ACL. È necessario un buffer ACL più grande.
ERROR_INVALID_ACL
L'elenco di controllo di accesso specificato non è formato correttamente.
ERROR_INVALID_FLAGS
Il parametro AceFlags non è valido.
ERROR_INVALID_SID
Il SID specificato non è valido in modo strutturale.
ERROR_REVISION_MISMATCH
La revisione specificata non è nota o non è compatibile con quella dell'ACL.
ERROR_SUCCESS
L'ACE è stato aggiunto correttamente.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione securitybaseapi.h (include Windows.h)
Libreria Advapi32.lib
DLL Advapi32.dll

Vedi anche

ACCESS_MASK

ACE_HEADER

ACL

AddAccessAllowedAceEx

AddAccessDeniedAceEx

Controllo di accesso di basso livello

Funzioni di Controllo di accesso di basso livello

SYSTEM_AUDIT_ACE