Funzione FltSetSecurityObject (fltkernel.h)
FltSetSecurityObject imposta lo stato di sicurezza di un oggetto.
Sintassi
NTSTATUS FLTAPI FltSetSecurityObject(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] SECURITY_INFORMATION SecurityInformation,
[in] PSECURITY_DESCRIPTOR SecurityDescriptor
);
Parametri
[in] Instance
Puntatore dell'istanza opaca per il chiamante. Questo parametro è obbligatorio e non può essere NULL.
[in] FileObject
Puntatore all'oggetto file per l'oggetto il cui stato di sicurezza deve essere impostato. Il chiamante deve avere l'accesso specificato nella colonna Significato della tabella illustrata nella descrizione del parametro SecurityInformation. Questo parametro è obbligatorio e non può essere NULL.
[in] SecurityInformation
SECURITY_INFORMATION valore che specifica le informazioni da impostare come combinazione di una o più delle opzioni seguenti.
Valore | Significato |
---|---|
OWNER_SECURITY_INFORMATION | Indica che l'identificatore proprietario dell'oggetto deve essere impostato. Richiede WRITE_OWNER l'accesso. |
GROUP_SECURITY_INFORMATION | Indica l'identificatore del gruppo primario dell'oggetto da impostare. Richiede WRITE_OWNER l'accesso. |
DACL_SECURITY_INFORMATION | Indica l'elenco di controllo di accesso discrezionale (DACL) dell'oggetto da impostare. Richiede l'accesso WRITE_DAC. |
SACL_SECURITY_INFORMATION | Indica l'ACL di sistema (SACL) dell'oggetto da impostare. Richiede l'accesso ACCESS_SYSTEM_SECURITY. |
[in] SecurityDescriptor
Puntatore al descrittore di sicurezza da impostare per l'oggetto.
Valore restituito
FltSetSecurityObject restituisce STATUS_SUCCESS o un valore NTSTATUS appropriato, ad esempio uno dei seguenti:
Codice restituito | Descrizione |
---|---|
STATUS_ACCESS_DENIED | Il chiamante non dispone dell'accesso richiesto. Si tratta di un codice di errore. |
STATUS_ACCESS_VIOLATION | |
STATUS_INSUFFICIENT_RESOURCES | Impossibile acquisire il descrittore di sicurezza dell'oggetto. Si tratta di un codice di errore. |
STATUS_INVALID_ACL | Il descrittore di sicurezza dell'oggetto contiene un elenco di controllo di accesso non valido. Si tratta di un codice di errore. |
STATUS_INVALID_SECURITY_DESCR | securityDescriptor non punta a un descrittore di sicurezza valido. Si tratta di un codice di errore. |
STATUS_INVALID_SID | Il descrittore di sicurezza dell'oggetto conteneva un SID non valido. Si tratta di un codice di errore. |
STATUS_UNKNOWN_REVISION | Il livello di revisione del descrittore di sicurezza dell'oggetto è sconosciuto o non è supportato. Si tratta di un codice di errore. |
STATUS_NOT_IMPLEMENTED | La routine FltSetSecurityObject è presente ma non supportata nell'ambiente del sistema operativo in cui è stata chiamata. |
Osservazioni
La routine fltSetSecurityObject
Un descrittore di sicurezza può essere in forma assoluta o auto-relativa. In forma auto-relativa, tutti i membri della struttura si trovano contiguamente in memoria. In forma assoluta, la struttura contiene solo puntatori ai membri. Per altre informazioni, vedere descrittori di sicurezza assoluti e Self-Relative.
Per altre informazioni sulla sicurezza e sul controllo di accesso, vedere la documentazione di questi argomenti in Windows SDK.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Universale |
intestazione |
fltkernel.h (include Fltkernel.h) |
libreria |
FltMgr.lib |
dll | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |