Condividi tramite


Funzione AddScopedPolicyIDAce (securitybaseapi.h)

La funzione AddScopedPolicyIDAce aggiunge una voce di controllo di accesso SYSTEM_SCOPED_POLICY_ID_ACE (ACE) alla fine di un elenco di controllo di accesso di sistema (SACL). Una struttura SYSTEM_SCOPED_POLICY_ID_ACE specifica un criterio di accesso centrale (CAP) da associare alla risorsa e può essere usato durante i controlli di accesso. Il set di diritti di accesso standard è definito nell'argomento Standard Access Rights.

Sintassi

BOOL AddScopedPolicyIDAce(
  [in, out] PACL  pAcl,
  [in]      DWORD dwAceRevision,
  [in]      DWORD AceFlags,
  [in]      DWORD AccessMask,
  [in]      PSID  pSid
);

Parametri

[in, out] pAcl

Puntatore a un elenco di controllo di accesso (ACL). Questa funzione aggiunge un ace a questo elenco di controllo di accesso. Il valore di questo parametro non può essere NULL.

[in] dwAceRevision

Specifica il livello di revisione dell'ACL da modificare. Questo valore può essere ACL_REVISION o ACL_REVISION_DS. Utilizzare ACL_REVISION_DS se l'ACL contiene ACL specifici dell'oggetto.

[in] AceFlags

Set di flag di bit che controllano l'ereditarietà ACE. La funzione imposta questi flag nel AceFlags membro della struttura ACE_HEADER della nuova ACE.

Per coerenza con l'interfaccia utente delle autorizzazioni avanzate per i file di Windows 8, le applicazioni devono specificare i flag CONTAINER_INHERIT_ACE e OBJECT_INHERIT_ACE nel parametro AceFlags.

Questo parametro può essere una combinazione dei valori seguenti.

Valore Significato
CONTAINER_INHERIT_ACE
2 (0x2)
L'ace viene ereditato dagli oggetti contenitore.
INHERIT_ONLY_ACE
8 (0x8)
L'ace non si applica all'oggetto a cui è assegnato l'ace, ma può essere ereditato dagli oggetti figlio.
INHERITED_ACE
16 (0x10)
Indica un ace ereditato. Questo flag consente 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
4 (0x4)
I bit OBJECT_INHERIT_ACE e CONTAINER_INHERIT_ACE non vengono propagati a un ace ereditato.
OBJECT_INHERIT_ACE
1 (0x1)
L'ace viene ereditato da oggetti non contenitore.

[in] AccessMask

Deve essere zero per Windows 8 e Windows Server 2012.

[in] pSid

Puntatore al SID (S-1-17-*) che identifica i criteri di accesso centrale da associare alla risorsa.

Valore restituito

Se la funzione ha esito positivo, restituisce TRUE.

Se la funzione non riesce, restituisce FALSE. Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Fabbisogno

Requisito Valore
client minimo supportato Windows 8 [solo app desktop]
server minimo supportato Windows Server 2012 [solo app desktop]
piattaforma di destinazione Finestre
intestazione securitybaseapi.h (include Windows.h)
libreria Kernel32.lib
dll Kernel32.dll

Vedere anche

diritti di accesso standard