Condividi tramite


SECURITY_DESCRIPTOR_CONTROL

Il tipo SECURITY_DESCRIPTOR_CONTROL è un set di flag di bit che qualificano il significato di una struttura SECURITY_DESCRIPTOR o dei relativi componenti. Ogni descrittore di sicurezza ha un membro Control che archivia i bit SECURITY_DESCRIPTOR_CONTROL .

typedef USHORT SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;

Il valore del controllo può includere una combinazione dei flag di bit SECURITY_DESCRIPTOR_CONTROL seguenti:

Valore Significato
SE_OWNER_DEFAULTED (0x0001) Un meccanismo predefinito, anziché il provider originale del descrittore di sicurezza, ha fornito l'identificatore di sicurezza del descrittore di sicurezza (SID). Per impostare questo flag, usare RtlSetOwnerSecurityDescriptor.
SE_GROUP_DEFAULTED (0x0002) Un meccanismo predefinito, anziché il provider originale del descrittore di sicurezza, ha fornito il SID del gruppo del descrittore di sicurezza.
SE_DACL_PRESENT (0x0004) Indica un descrittore di sicurezza con un DACL. Se questo flag non è impostato o se questo flag è impostato e DACL è NULL, il descrittore di sicurezza consente l'accesso completo a tutti. Questo flag viene usato per contenere le informazioni di sicurezza specificate da un chiamante fino a quando il descrittore di sicurezza non è associato a un oggetto a protezione diretta. Quando il descrittore di sicurezza è associato a un oggetto a protezione diretta, il flag SE_DACL_PRESENT viene sempre impostato nel controllo del descrittore di sicurezza. Per impostare questo flag, usare RtlSetDaclSecurityDescriptor.
SE_DACL_DEFAULTED (0x0008) Indica un descrittore di sicurezza con un DACL predefinito. Ad esempio, se l'autore di un oggetto non specifica un DACL, l'oggetto riceve l'elenco DACL predefinito dal token di accesso dell'autore. Questo flag può influire sul modo in cui il sistema gestisce l'elenco DACL, in relazione all'ereditarietà ACE. Il sistema ignora questo flag se il flag SE_DACL_PRESENT non è impostato. Questo flag viene usato per determinare la modalità di calcolo dell'elenco DACL finale nell'oggetto e non viene archiviato fisicamente nel controllo del descrittore di sicurezza dell'oggetto a protezione diretta. Per impostare questo flag, usare RtlSetDaclSecurityDescriptor.
SE_SACL_PRESENT (0x0010) Indica un descrittore di sicurezza con sacl.
SE_SACL_DEFAULTED (0x0020) Un meccanismo predefinito, anziché il provider originale del descrittore di sicurezza, ha fornito sacl. Questo flag può influire sul modo in cui il sistema gestisce la sacl, in relazione all'ereditarietà ACE. Il sistema ignora questo flag se il flag SE_SACL_PRESENT non è impostato.
SE_DACL_UNTRUSTED (0x0040) Indica che l'ACL a cui punta il DACL del descrittore di sicurezza è stato fornito da un'origine non attendibile. Se questo flag è impostato e viene rilevato un ACE composto, il sistema sostituisce i SID validi noti per i SID del server negli ACL.
SE_SERVER_SECURITY (0x0080) Richiede che il provider per l'oggetto protetto dal descrittore di sicurezza il cui ACL deve essere un ACL del server in base all'ACL di input, indipendentemente dall'origine (esplicita o predefinita). Questa operazione viene eseguita sostituendo tutti gli ACL GRANT con AE composti che concedono il server corrente. Questo flag è significativo solo se l'oggetto rappresenta.
SE_DACL_AUTO_INHERIT_REQ (0x0100) Richiede che il provider per l'oggetto protetto dal descrittore di sicurezza propaga automaticamente l'elenco DACL agli oggetti figlio esistenti. Se il provider supporta l'ereditarietà automatica, propaga il DACL a qualsiasi oggetto figlio esistente e imposta il bit di SE_DACL_AUTO_INHERITED nei descrittori di sicurezza dell'oggetto e dei relativi oggetti figlio.
SE_SACL_AUTO_INHERIT_REQ (0x0200) Richiede che il provider per l'oggetto protetto dal descrittore di sicurezza propaga automaticamente l'oggetto SACL agli oggetti figlio esistenti. Se il provider supporta l'ereditarietà automatica, propaga sacl a qualsiasi oggetto figlio esistente e imposta il bit di SE_SACL_AUTO_INHERITED nei descrittori di sicurezza dell'oggetto e dei relativi oggetti figlio.
SE_DACL_AUTO_INHERITED (0x0400) A partire da Windows 2000, indica un descrittore di sicurezza in cui DACL supporta la propagazione automatica degli ACL ereditabili in oggetti figlio esistenti. Per gli ACL di Windows 2000 che supportano autoinheritance, questo bit è sempre impostato. Viene usato per distinguere questi ACL da ACL di Windows NT 4.0 che non supportano l'istanza automatica. Questo bit non è impostato nei descrittori di sicurezza per Windows NT 4.0 e versioni precedenti, che non supportano la propagazione automatica degli ACL ereditabili.
SE_SACL_AUTO_INHERITED (0x0800) Indica un descrittore di sicurezza in cui SACL supporta la propagazione automatica degli ACL ereditabili a oggetti figlio esistenti. Questo bit viene impostato solo se l'algoritmo di ereditarietà automatica è stato eseguito per l'oggetto e i relativi oggetti figlio esistenti. Questo bit non è impostato nei descrittori di sicurezza per Windows NT 4.0 e versioni precedenti, che non supportano la propagazione automatica degli ACL ereditabili.
SE_DACL_PROTECTED (0x1000) Protegge l'elenco DACL del descrittore di sicurezza dall'essere modificato dagli ACL ereditabili.
SE_SACL_PROTECTED (0x2000) Protegge l'elenco SACL del descrittore di sicurezza dall'essere modificato dagli ACL ereditabili.
SE_RM_CONTROL_VALID (0x4000) Indica che i bit di Gestione controllo risorse nel descrittore di sicurezza sono validi. I bit di controllo Resource Manager sono otto bit nel membro Sbz1 della struttura SECURITY_DESCRIPTOR che contiene informazioni specifiche del Resource Manager che accedono alla struttura. Per altre informazioni, vedere Windows SDK.
SE_SELF_RELATIVE (0x8000) Indica un descrittore di sicurezza in formato auto-relativo con tutte le informazioni di sicurezza in un blocco contiguo di memoria. Se questo flag non è impostato, il descrittore di sicurezza è in formato assoluto. Per altre informazioni, vedere la documentazione di Windows SDK.

Requisiti

ntifs.h (include ntifs.h)

ACE

ACL

RtlSetDaclSecurityDescriptor

RtlSetOwnerSecurityDescriptor

SECURITY_DESCRIPTOR