Funzione AddAccessDeniedAceEx (securitybaseapi.h)
La funzione AddAccessDeniedAceEx aggiunge una voce di controllo di accesso negato (ACE) alla fine di un elenco di controllo di accesso discrezionale (DACL).
Sintassi
BOOL AddAccessDeniedAceEx(
[in, out] PACL pAcl,
[in] DWORD dwAceRevision,
[in] DWORD AceFlags,
[in] DWORD AccessMask,
[in] PSID pSid
);
Parametri
[in, out] pAcl
Puntatore a un DACL. La funzione AddAccessDeniedAceEx aggiunge un ace di accesso negato alla fine di questo DACL. Ace è sotto forma di struttura ACCESS_DENIED_ACE .
[in] dwAceRevision
Specifica il livello di revisione dell'elenco DACL da modificare. Questo valore può essere ACL_REVISION o ACL_REVISION_DS. Usare ACL_REVISION_DS se l'elenco DACL contiene ACL specifici dell'oggetto.
[in] AceFlags
Set di flag di bit che controllano l'ereditarietà ACE. 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 |
---|---|
|
L'ace viene ereditato dagli oggetti contenitore. |
|
L'ace non si applica all'oggetto a cui è assegnato l'elenco di controllo di accesso ( ACL), ma può essere ereditato dagli oggetti figlio. |
|
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. |
|
I bit OBJECT_INHERIT_ACE e CONTAINER_INHERIT_ACE non vengono propagati a un ace ereditato. |
|
L'ACE viene ereditato da oggetti non contenitore. |
[in] AccessMask
Set di flag di bit che usano il formato ACCESS_MASK per specificare i diritti di accesso negati dal nuovo ACE all'identificatore di sicurezza (SID) specificato.
[in] pSid
Puntatore a un SID che identifica l'utente, il gruppo o la sessione di accesso a cui il nuovo ACE nega l'accesso.
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 possibili valori di errore.
Codice restituito | Descrizione |
---|---|
|
La nuova ace non rientra nell'elenco di controllo di accesso. È necessario un buffer ACL più grande. |
|
L'elenco di controllo di accesso specificato non è formato correttamente. |
|
Il parametro AceFlags non è valido. |
|
Il SID specificato non è strutturalmente valido. |
|
La revisione specificata non è nota o non è compatibile con quella dell'ACL. |
|
L'ace è stato aggiunto correttamente. |
Commenti
Sebbene la funzione AddAccessDeniedAceEx aggiunga la nuova ace alla fine dell'elenco di controllo di accesso, gli ACL negati dall'accesso devono essere visualizzati all'inizio di un DACL. Il chiamante deve assicurarsi che gli ACL vengano aggiunti all'elenco DACL nell'ordine corretto. Per altre informazioni, vedere Order of ACEs in a DACL.For more information, see Order of ACEs in a DACL.
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 |