Funzione ZwSetSecurityObject (ntifs.h)

La routine ZwSetSecurityObject imposta lo stato di sicurezza di un oggetto.

Sintassi

NTSYSAPI NTSTATUS ZwSetSecurityObject(
  [in] HANDLE               Handle,
  [in] SECURITY_INFORMATION SecurityInformation,
  [in] PSECURITY_DESCRIPTOR SecurityDescriptor
);

Parametri

[in] Handle

Handle per l'oggetto lo stato di sicurezza da impostare. Questo handle deve avere l'accesso specificato nella colonna Significato della tabella visualizzata nella descrizione del parametro SecurityInformation .

[in] SecurityInformation

Valore SECURITY_INFORMATIONche specifica le informazioni da impostare. Può essere una combinazione di uno o più dei valori seguenti.

Valore Significato
DACL_SECURITY_INFORMATION Indica l'elenco di controllo di accesso discrezionale dell'oggetto da impostare. Richiede WRITE_DAC accesso.
GROUP_SECURITY_INFORMATION Indica che l'identificatore del gruppo primario dell'oggetto deve essere impostato. Richiede l'accesso WRITE_OWNER.
OWNER_SECURITY_INFORMATION Indica che l'identificatore proprietario dell'oggetto deve essere impostato. Richiede l'accesso WRITE_OWNER.
SACL_SECURITY_INFORMATION Indica che l'ACL di sistema (SACL) dell'oggetto deve essere impostato. Richiede ACCESS_SYSTEM_SECURITY accesso.

[in] SecurityDescriptor

Puntatore al descrittore di sicurezza da impostare per l'oggetto.

Valore restituito

ZwSetSecurityObject restituisce STATUS_SUCCESS o uno stato di errore appropriato. I codici di stato degli errori possibili includono quanto segue:

Codice restituito Descrizione
STATUS_ACCESS_DENIED Handle non dispone dei diritti di accesso necessari.
STATUS_ACCESS_VIOLATION SecurityDescriptor è un puntatoreNULL .
STATUS_INSUFFICIENT_RESOURCES Impossibile acquisire il descrittore di sicurezza dell'oggetto.
STATUS_INVALID_ACL Il descrittore di sicurezza dell'oggetto contiene un elenco di controllo di accesso non valido.
STATUS_INVALID_HANDLE Handle non è un handle valido.
STATUS_INVALID_SECURITY_DESCR SecurityDescriptor non punta a un descrittore di sicurezza valido.
STATUS_INVALID_SID Il descrittore di sicurezza dell'oggetto contiene un SID non valido.
STATUS_OBJECT_TYPE_MISMATCH Handle non è un handle del tipo previsto.
STATUS_UNKNOWN_REVISION Il livello di revisione del descrittore di sicurezza dell'oggetto è sconosciuto o non è supportato.

Commenti

Un descrittore di sicurezza può essere in formato assoluto o auto-relativo. 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" nella sezione Sicurezza della documentazione di Windows SDK.

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.

I minifilter devono usare FltSetSecurityObject anziché ZwSetSecurityObject.

I chiamanti di ZwSetSecurityObject devono essere in esecuzione in IRQL = PASSIVE_LEVEL e con API kernel speciali abilitate.

Nota

Se la chiamata alla funzione ZwSetSecurityObject si verifica in modalità utente, è consigliabile usare il nome "NtSetSecurityObject" anziché "ZwSetSecurityObject".

Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Uso di nt e zw versioni delle routine di Servizi di sistema nativo.

Requisiti

Requisito Valore
Client minimo supportato Windows XP
Piattaforma di destinazione Universale
Intestazione ntifs.h (include Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL (vedere la sezione Osservazioni)
Regole di conformità DDI HwStorPortProhibitedDDIs(storport), PowerIrpDDis(wdm)

Vedi anche

FltSetSecurityObject

SECURITY_DESCRIPTOR

SECURITY_INFORMATION

Uso di nt e zw versioni delle routine di Servizi di sistema nativo

ZwQuerySecurityObject