Partager via


SECURITY_DESCRIPTOR_CONTROL

Le type de données SECURITY_DESCRIPTOR_CONTROL est un ensemble d’indicateurs de bits qui qualifient la signification d’un descripteur de sécurité ou de ses composants. Chaque descripteur de sécurité a un membre Control qui stocke les bits SECURITY_DESCRIPTOR_CONTROL .

typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;

Notes

Pour obtenir les bits de contrôle d’un descripteur de sécurité, appelez la fonction GetSecurityDescriptorControl . Pour définir les bits de contrôle d’un descripteur de sécurité, utilisez les fonctions permettant de modifier les descripteurs de sécurité. Pour obtenir la liste de ces fonctions, consultez la section Voir aussi.

Les applications peuvent utiliser la fonction SetSecurityDescriptorControl pour définir les bits de contrôle qui se rapportent à l’héritage automatique des AE.

La valeur de contrôle récupérée par la fonction GetSecurityDescriptorControl peut inclure une combinaison des indicateurs de bits SECURITY_DESCRIPTOR_CONTROL suivants.

Valeur Signification
SE_DACL_AUTO_INHERIT_REQ
0x0100
Indique un descripteur de sécurité requis dans lequel la liste de contrôle d’accès discrétionnaire (DACL) est configurée pour prendre en charge la propagation automatique d’entrées de contrôle d’accès (ASEE) pouvant être héritées vers des objets enfants existants.
Pour les listes de contrôle d’accès (ACL) qui prennent en charge l’héritage automatique, ce bit est toujours défini. Les serveurs protégés peuvent appeler la fonction ConvertToAutoInheritPrivateObjectSecurity pour convertir un descripteur de sécurité et définir cet indicateur.
SE_DACL_AUTO_INHERITED
0x0400
Indique un descripteur de sécurité dans lequel la liste de contrôle d’accès discrétionnaire (DACL) est configurée pour prendre en charge la propagation automatique d’entrées de contrôle d’accès (ASEE) héritées vers des objets enfants existants.
Pour les listes de contrôle d’accès (ACL) qui prennent en charge l’héritage automatique, ce bit est toujours défini. Les serveurs protégés peuvent appeler la fonction ConvertToAutoInheritPrivateObjectSecurity pour convertir un descripteur de sécurité et définir cet indicateur.
SE_DACL_DEFAULTED
0x0008
Indique un descripteur de sécurité avec un DACL par défaut. Par exemple, si le créateur d’un objet ne spécifie pas de DACL, l’objet reçoit le DACL par défaut du jeton d’accès du créateur. Cet indicateur peut affecter la façon dont le système traite le DACL en ce qui concerne l’héritage ACE. Le système ignore cet indicateur si l’indicateur SE_DACL_PRESENT n’est pas défini.
Cet indicateur est utilisé pour déterminer comment la liste DACL finale sur l’objet doit être calculée et n’est pas stockée physiquement dans le contrôle de descripteur de sécurité de l’objet sécurisable.
Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorDacl .
SE_DACL_PRESENT
0x0004
Indique un descripteur de sécurité qui a un DACL. Si cet indicateur n’est pas défini, ou si cet indicateur est défini et que la liste DACL a la valeur NULL, le descripteur de sécurité autorise un accès complet à tout le monde.
Cet indicateur permet de conserver les informations de sécurité spécifiées par un appelant jusqu’à ce que le descripteur de sécurité soit associé à un objet sécurisable. Une fois que le descripteur de sécurité est associé à un objet sécurisable, l’indicateur SE_DACL_PRESENT est toujours défini dans le contrôle de descripteur de sécurité.
Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorDacl .
SE_DACL_PROTECTED
0x1000
Empêche la modification de la liste DACL du descripteur de sécurité par des AE pouvant être héritées. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorControl .
SE_GROUP_DEFAULTED
0x0002
Indique que l’identificateur de sécurité (SID) du groupe de descripteur de sécurité a été fourni par un mécanisme par défaut. Cet indicateur peut être utilisé par un gestionnaire de ressources pour identifier les objets dont le groupe de descripteur de sécurité a été défini par un mécanisme par défaut. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorGroup .
SE_OWNER_DEFAULTED
0x0001
Indique que le SID du propriétaire du descripteur de sécurité a été fourni par un mécanisme par défaut. Cet indicateur peut être utilisé par un gestionnaire de ressources pour identifier les objets dont le propriétaire a été défini par un mécanisme par défaut. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorOwner .
SE_RM_CONTROL_VALID
0x4000
Indique que le contrôle Resource Manager est valide.
SE_SACL_AUTO_INHERIT_REQ
0x0200
Indique un descripteur de sécurité requis dans lequel la liste de contrôle d’accès système (SACL) est configurée pour prendre en charge la propagation automatique des AIC héritées vers des objets enfants existants.
Le système définit ce bit lorsqu’il exécute l’algorithme d’héritage automatique pour l’objet et ses objets enfants existants. Pour convertir un descripteur de sécurité et définir cet indicateur, les serveurs protégés peuvent appeler la fonction ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_AUTO_INHERITED
0x0800
Indique un descripteur de sécurité dans lequel la liste de contrôle d’accès système (SACL) est configurée pour prendre en charge la propagation automatique des AIC héritées vers des objets enfants existants.
Le système définit ce bit lorsqu’il exécute l’algorithme d’héritage automatique pour l’objet et ses objets enfants existants. Pour convertir un descripteur de sécurité et définir cet indicateur, les serveurs protégés peuvent appeler la fonction ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_DEFAULTED
0x0008
Un mécanisme par défaut, plutôt que le fournisseur d’origine du descripteur de sécurité, a fourni la SACL. Cet indicateur peut affecter la façon dont le système traite la SACL, en ce qui concerne l’héritage ACE. Le système ignore cet indicateur si l’indicateur SE_SACL_PRESENT n’est pas défini. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorSacl .
SE_SACL_PRESENT
0x0010
Indique un descripteur de sécurité qui a une SACL. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorSacl .
SE_SACL_PROTECTED
0x2000
Empêche la modification de la liste SACL du descripteur de sécurité par des AE pouvant être héritées. Pour définir cet indicateur, utilisez la fonction SetSecurityDescriptorControl .
SE_SELF_RELATIVE
0x8000
Indique un descripteur de sécurité auto-relatif. Si cet indicateur n’est pas défini, le descripteur de sécurité est au format absolu. Pour plus d’informations, consultez Descripteurs de sécurité absolus et Self-Relative.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows XP [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2003 [applications de bureau uniquement]
En-tête
Winnt.h (inclure Windows.h)

Voir aussi

Access Control de bas niveau

Structures de Access Control de base

ConvertToAutoInheritPrivateObjectSecurity

GetSecurityDescriptorControl

GetSecurityDescriptorDacl

GetSecurityDescriptorGroup

GetSecurityDescriptorOwner

GetSecurityDescriptorSacl

SetSecurityDescriptorControl

SetSecurityDescriptorDacl

SetSecurityDescriptorGroup

SetSecurityDescriptorOwner

SetSecurityDescriptorSacl