Compartir a través de


SECURITY_DESCRIPTOR_CONTROL

El tipo de datos SECURITY_DESCRIPTOR_CONTROL es un conjunto de marcas de bits que califican el significado de un descriptor de seguridad o sus componentes. Cada descriptor de seguridad tiene un miembro Control que almacena los bits de SECURITY_DESCRIPTOR_CONTROL .

typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;

Comentarios

Para obtener los bits de control de un descriptor de seguridad, llame a la función GetSecurityDescriptorControl . Para establecer los bits de control de un descriptor de seguridad, use las funciones para modificar los descriptores de seguridad. Para obtener una lista de estas funciones, consulte la sección Vea también.

Las aplicaciones pueden usar la función SetSecurityDescriptorControl para establecer los bits de control relacionados con la herencia automática de ACE.

El valor de control recuperado por la función GetSecurityDescriptorControl puede incluir una combinación de las marcas de bits de SECURITY_DESCRIPTOR_CONTROL siguientes.

Valor Significado
SE_DACL_AUTO_INHERIT_REQ
0x0100
Indica un descriptor de seguridad necesario en el que se configura la lista de control de acceso discrecional (DACL) para admitir la propagación automática de entradas de control de acceso heredables (ACE) a objetos secundarios existentes.
Para las listas de control de acceso (ACL) que admiten la herencia automática, este bit siempre se establece. Los servidores protegidos pueden llamar a la función ConvertToAutoInheritPrivateObjectSecurity para convertir un descriptor de seguridad y establecer esta marca.
SE_DACL_AUTO_INHERITED
0x0400
Indica un descriptor de seguridad en el que se configura la lista de control de acceso discrecional (DACL) para admitir la propagación automática de entradas de control de acceso heredables (ACE) a objetos secundarios existentes.
Para las listas de control de acceso (ACL) que admiten la herencia automática, este bit siempre se establece. Los servidores protegidos pueden llamar a la función ConvertToAutoInheritPrivateObjectSecurity para convertir un descriptor de seguridad y establecer esta marca.
SE_DACL_DEFAULTED
0x0008
Indica un descriptor de seguridad con una DACL predeterminada. Por ejemplo, si el creador de un objeto no especifica una DACL, el objeto recibe la DACL predeterminada del token de acceso del creador. Esta marca puede afectar al modo en que el sistema trata la DACL con respecto a la herencia ACE. El sistema omite esta marca si no se establece la marca de SE_DACL_PRESENT.
Esta marca se usa para determinar cómo se va a calcular la DACL final del objeto y no se almacena físicamente en el control descriptor de seguridad del objeto protegible.
Para establecer esta marca, use la función SetSecurityDescriptorDacl .
SE_DACL_PRESENT
0x0004
Indica un descriptor de seguridad que tiene una DACL. Si no se establece esta marca o si se establece esta marca y daCL es NULL, el descriptor de seguridad permite el acceso total a todos los usuarios.
Esta marca se usa para contener la información de seguridad especificada por un llamador hasta que el descriptor de seguridad esté asociado a un objeto protegible. Después de asociar el descriptor de seguridad a un objeto protegible, la marca SE_DACL_PRESENT siempre se establece en el control descriptor de seguridad.
Para establecer esta marca, use la función SetSecurityDescriptorDacl .
SE_DACL_PROTECTED
0x1000
Impide que la DACL del descriptor de seguridad se modifique mediante ace heredables. Para establecer esta marca, use la función SetSecurityDescriptorControl .
SE_GROUP_DEFAULTED
0x0002
Indica que el identificador de seguridad (SID) del grupo de descriptores de seguridad se proporcionó mediante un mecanismo predeterminado. Un administrador de recursos puede usar esta marca para identificar objetos cuyo grupo de descriptores de seguridad se estableció mediante un mecanismo predeterminado. Para establecer esta marca, use la función SetSecurityDescriptorGroup .
SE_OWNER_DEFAULTED
0x0001
Indica que el SID del propietario del descriptor de seguridad se proporcionó mediante un mecanismo predeterminado. Un administrador de recursos puede usar esta marca para identificar objetos cuyo propietario se estableció mediante un mecanismo predeterminado. Para establecer esta marca, use la función SetSecurityDescriptorOwner .
SE_RM_CONTROL_VALID
0x4000
Indica que el control de Resource Manager es válido.
SE_SACL_AUTO_INHERIT_REQ
0x0200
Indica un descriptor de seguridad necesario en el que la lista de control de acceso del sistema (SACL) está configurada para admitir la propagación automática de ace heredables a los objetos secundarios existentes.
El sistema establece esta parte cuando realiza el algoritmo de herencia automática para el objeto y sus objetos secundarios existentes. Para convertir un descriptor de seguridad y establecer esta marca, los servidores protegidos pueden llamar a la función ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_AUTO_INHERITED
0x0800
Indica un descriptor de seguridad en el que se configura la lista de control de acceso del sistema (SACL) para admitir la propagación automática de ace herederas a objetos secundarios existentes.
El sistema establece esta parte cuando realiza el algoritmo de herencia automática para el objeto y sus objetos secundarios existentes. Para convertir un descriptor de seguridad y establecer esta marca, los servidores protegidos pueden llamar a la función ConvertToAutoInheritPrivateObjectSecurity .
SE_SACL_DEFAULTED
0x0008
Un mecanismo predeterminado, en lugar del proveedor original del descriptor de seguridad, proporcionó la SACL. Esta marca puede afectar al modo en que el sistema trata la SACL, con respecto a la herencia ACE. El sistema omite esta marca si no se establece la marca SE_SACL_PRESENT. Para establecer esta marca, use la función SetSecurityDescriptorSacl .
SE_SACL_PRESENT
0x0010
Indica un descriptor de seguridad que tiene una SACL. Para establecer esta marca, use la función SetSecurityDescriptorSacl .
SE_SACL_PROTECTED
0x2000
Impide que la SACL del descriptor de seguridad se modifique mediante ace heredables. Para establecer esta marca, use la función SetSecurityDescriptorControl .
SE_SELF_RELATIVE
0x8000
Indica un descriptor de seguridad relativo a sí mismo. Si no se establece esta marca, el descriptor de seguridad tiene el formato absoluto. Para obtener más información, consulte Descriptores de seguridad absolutos y Self-Relative.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado
Winnt.h (incluye Windows.h)

Consulte también

Access Control de bajo nivel

Estructuras básicas de Access Control

ConvertToAutoInheritPrivateObjectSecurity

GetSecurityDescriptorControl

GetSecurityDescriptorDacl

GetSecurityDescriptorGroup

GetSecurityDescriptorOwner

GetSecurityDescriptorSacl

SetSecurityDescriptorControl

SetSecurityDescriptorDacl

SetSecurityDescriptorGroup

SetSecurityDescriptorOwner

SetSecurityDescriptorSacl