Funzione RtlGetDaclSecurityDescriptor (ntifs.h)
La routine RtlGetDaclSecurityDescriptor restituisce un puntatore all'ACL discrezionale (DACL) per un descrittore di sicurezza.
Sintassi
NTSYSAPI NTSTATUS RtlGetDaclSecurityDescriptor(
[in] PSECURITY_DESCRIPTOR SecurityDescriptor,
[out] PBOOLEAN DaclPresent,
[out] PACL *Dacl,
[out] PBOOLEAN DaclDefaulted
);
Parametri
[in] SecurityDescriptor
Puntatore al SECURITY_DESCRIPTOR il cui daCL deve essere restituito.
[out] DaclPresent
Puntatore a una variabile booleana che indica la presenza di un'elenco dati nel descrittore di sicurezza specificato. Se questa variabile riceve TRUE, il descrittore di sicurezza contiene un'elenco dati e i parametri di output rimanenti ricevono valori validi. Se questa variabile riceve FALSE, il descrittore di sicurezza non contiene un elenco dati e i parametri di output rimanenti non ricevono valori validi.
[out] Dacl
Puntatore a una variabile che riceve l'indirizzo dell'elenco dati per il descrittore di sicurezza. Se il descrittore di sicurezza non dispone di un elenco di controllo livello dati, questa variabile non riceve un valore. Se il descrittore di sicurezza ha un daCL NULL , questa variabile riceve NULL. Un daCL NULL consente in modo implicito l'accesso a un oggetto.
[out] DaclDefaulted
Puntatore a una variabile booleana che riceve il valore del flag di SE_DACL_DEFAULTED nella struttura di SECURITY_DESCRIPTOR_CONTROL del descrittore di sicurezza. Se questo flag è TRUE, l'elenco dati è stato recuperato da un meccanismo predefinito. Se è FALSE, l'elenco di controllo livello dati è stato specificato in modo esplicito da un utente. Questo valore è valido solo se *Dacl riceve un valore non NULL .
Valore restituito
RtlGetDaclSecurityDescriptor restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio quanto segue:
Codice restituito | Descrizione |
---|---|
|
Il livello di revisione del descrittore di sicurezza è sconosciuto o non è supportato. Si tratta di un codice di errore. |
Commenti
Un valore true per *DaclPresent non significa che *Dacl è diverso da NULL. In questo caso , *DaclPresent può essere TRUE mentre *Dacl è NULL, significa che un DACL NULL è effettivo. Un daCL NULL consente in modo implicito l'accesso a un oggetto e non è uguale a un daCL vuoto. Un daCL vuoto non consente l'accesso a un oggetto.
Per altre informazioni sul controllo di sicurezza e accesso, vedere Modello di sicurezza di Windows per sviluppatori driver e la documentazione su questi argomenti in Windows SDK.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Server 2003 SP1 |
Piattaforma di destinazione | Universale |
Intestazione | ntifs.h (include Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |