SECURITY_DESCRIPTOR_CONTROL

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

typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;

Commenti

Per ottenere i bit di controllo di un descrittore di sicurezza, chiamare la funzione GetSecurityDescriptorControl . Per impostare i bit di controllo di un descrittore di sicurezza, usare le funzioni per modificare i descrittori di sicurezza. Per un elenco di queste funzioni, vedere la sezione Vedere anche.

Le applicazioni possono usare la funzione SetSecurityDescriptorControl per impostare i bit di controllo correlati all'ereditarietà automatica degli ACL.

Il valore del controllo recuperato dalla funzione GetSecurityDescriptorControl può includere una combinazione dei flag SECURITY_DESCRIPTOR_CONTROL bit seguenti.

Valore Significato
SE_DACL_AUTO_INHERIT_REQ
0x0100
Indica un descrittore di sicurezza obbligatorio in cui è configurato l'elenco di controllo degli accessi discrezionali (DACL) per supportare la propagazione automatica delle voci di controllo degli accessi ereditabili (ACE) agli oggetti figlio esistenti.
Per gli elenchi di controllo di accesso (ACL) che supportano l'ereditarietà automatica, questo bit è sempre impostato. I server protetti possono chiamare la funzione ConvertToAutoInheritPrivateObjectSecurity per convertire un descrittore di sicurezza e impostare questo flag.
SE_DACL_AUTO_INHERITED
0x0400
Indica un descrittore di sicurezza in cui è configurato l'elenco di controllo degli accessi discrezionali (DACL) per supportare la propagazione automatica delle voci di controllo di accesso ereditabili (ACEs) agli oggetti figlio esistenti.
Per gli elenchi di controllo di accesso (ACL) che supportano l'ereditarietà automatica, questo bit è sempre impostato. I server protetti possono chiamare la funzione ConvertToAutoInheritPrivateObjectSecurity per convertire un descrittore di sicurezza e impostare questo flag.
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 dati predefinito dal token di accesso dell'autore. Questo flag può influire sul modo in cui il sistema tratta l'ereditarietà DACL rispetto all'ereditarietà ACE. Il sistema ignora questo flag se il flag di SE_DACL_PRESENT non è impostato.
Questo flag viene usato per determinare il modo in cui l'elenco daCL finale dell'oggetto deve essere calcolato e non viene archiviato fisicamente nel controllo descrittore di sicurezza dell'oggetto a protezione diretta.
Per impostare questo flag, usare la funzione SetSecurityDescriptorDacl .
SE_DACL_PRESENT
0x0004
Indica un descrittore di sicurezza con un'elenco dati. Se questo flag non è impostato o se questo flag è impostato e l'elenco dati 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. Dopo che il descrittore di sicurezza è associato a un oggetto a protezione diretta, il flag di SE_DACL_PRESENT viene sempre impostato nel controllo descrittore di sicurezza.
Per impostare questo flag, usare la funzione SetSecurityDescriptorDacl .
SE_DACL_PROTECTED
0x1000
Impedisce la modifica dell'elenco dati del descrittore di sicurezza da parte degli ACL ereditabili. Per impostare questo flag, usare la funzione SetSecurityDescriptorControl .
SE_GROUP_DEFAULTED
0x0002
Indica che l'identificatore di sicurezza (SID) del gruppo descrittore di sicurezza è stato fornito da un meccanismo predefinito. Questo flag può essere usato da un gestore risorse per identificare gli oggetti il cui gruppo descrittore di sicurezza è stato impostato da un meccanismo predefinito. Per impostare questo flag, usare la funzione SetSecurityDescriptorGroup .
SE_OWNER_DEFAULTED
0x0001
Indica che il SID del proprietario del descrittore di sicurezza è stato fornito da un meccanismo predefinito. Questo flag può essere usato da un gestore risorse per identificare gli oggetti il cui proprietario è stato impostato da un meccanismo predefinito. Per impostare questo flag, usare la funzione SetSecurityDescriptorOwner .
SE_RM_CONTROL_VALID
0x4000
Indica che il controllo resource manager è valido.
SE_SACL_AUTO_INHERIT_REQ
0x0200
Indica un descrittore di sicurezza obbligatorio in cui è configurato l'elenco di controllo di accesso del sistema (SACL) per supportare la propagazione automatica degli ACL ereditabili agli oggetti figlio esistenti.
Il sistema imposta questo bit quando esegue l'algoritmo di ereditarietà automatica per l'oggetto e i relativi oggetti figlio esistenti. Per convertire un descrittore di sicurezza e impostare questo flag, i server protetti possono chiamare la funzione ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_AUTO_INHERITED
0x0800
Indica un descrittore di sicurezza in cui è configurato l'elenco di controllo di accesso del sistema (SACL) per supportare la propagazione automatica degli ACL ereditabili agli oggetti figlio esistenti.
Il sistema imposta questo bit quando esegue l'algoritmo di ereditarietà automatica per l'oggetto e i relativi oggetti figlio esistenti. Per convertire un descrittore di sicurezza e impostare questo flag, i server protetti possono chiamare la funzione ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_DEFAULTED
0x0008
Un meccanismo predefinito, anziché il provider originale del descrittore di sicurezza, ha fornito sacl. Questo flag può influire sul modo in cui il sistema tratta SACL, rispetto all'ereditarietà ACE. Il sistema ignora questo flag se il flag di SE_SACL_PRESENT non è impostato. Per impostare questo flag, usare la funzione SetSecurityDescriptorSacl .
SE_SACL_PRESENT
0x0010
Indica un descrittore di sicurezza con SACL. Per impostare questo flag, usare la funzione SetSecurityDescriptorSacl .
SE_SACL_PROTECTED
0x2000
Impedisce la modifica del descrittore di sicurezza SACL da parte degli ACL ereditabili. Per impostare questo flag, usare la funzione SetSecurityDescriptorControl .
SE_SELF_RELATIVE
0x8000
Indica un descrittore di sicurezza self-relativo. Se questo flag non è impostato, il descrittore di sicurezza è in formato assoluto. Per altre informazioni, vedere Descrittori di sicurezza assoluti e Self-Relative.

Requisiti

Requisito Valore
Client minimo supportato
Windows XP [solo app desktop]
Server minimo supportato
Windows Server 2003 [solo app desktop]
Intestazione
Winnt.h (include Windows.h)

Vedi anche

Controllo di accesso di basso livello

Strutture di base Controllo di accesso

ConvertToAutoInheritPrivateObjectSecurity

GetSecurityDescriptorControl

GetSecurityDescriptorDacl

GetSecurityDescriptorGroup

GetSecurityDescriptorOwner

GetSecurityDescriptorSacl

SetSecurityDescriptorControl

SetSecurityDescriptorDacl

SetSecurityDescriptorGroup

SetSecurityDescriptorOwner

SetSecurityDescriptorSacl