estructura ACCESS_ALLOWED_ACE (winnt.h)
La estructura ACCESS_ALLOWED_ACE define una entrada de control de acceso (ACE) para la lista de control de acceso discrecional (DACL) que controla el acceso a un objeto. Una ACE permitida por el acceso permite el acceso a un objeto para un administrador de confianza específico identificado por un identificador de seguridad (SID).
Sintaxis
typedef struct _ACCESS_ALLOWED_ACE {
ACE_HEADER Header;
ACCESS_MASK Mask;
DWORD SidStart;
} ACCESS_ALLOWED_ACE;
Miembros
Header
ACE_HEADER estructura que especifica el tamaño y el tipo de ACE. También contiene marcas que controlan la herencia de la ACE por objetos secundarios. El miembro AceType de la estructura ACE_HEADER debe establecerse en ACCESS_ALLOWED_ACE_TYPE y el miembro AceSize debe establecerse en el número total de bytes asignados para la estructura de ACCESS_ALLOWED_ACE .
Mask
Especifica una estructura ACCESS_MASK que especifica los derechos de acceso concedidos por esta ACE.
SidStart
Primera DWORD del SID de un administrador. Los bytes restantes del SID se almacenan en memoria contigua después del miembro SidStart . Este SID se puede anexar con los datos de la aplicación.
Comentarios
Las estructuras ACE deben alinearse en los límites de DWORD . Todas las funciones de administración de memoria de Windows devuelven identificadores alineados con DWORD a la memoria.
Los derechos de acceso especificados por el miembro Mask se conceden a cualquier administrador que posea un SID habilitado que coincida con el SID almacenado en el miembro SidStart .
Una estructura de ACCESS_ALLOWED_ACE se puede crear en una lista de control de acceso (ACL) mediante una llamada a la función AddAccessAllowedAce o AddAccessAllowedAceEx . Cuando se usan estas funciones, se asigna la cantidad correcta de memoria necesaria para acomodar el SID del administrador de confianza y los valores de los miembros Header.AceType y Header.AceSize se establecen automáticamente. Si se usa la función AddAccessAllowedAceEx , también se establece el miembro Header.AceFlags . Cuando se crea una estructura de ACCESS_ALLOWED_ACE fuera de una ACL, se debe asignar suficiente memoria para alojar el SID completo del administrador en el miembro SidStart y la memoria contigua que lo sigue, y los valores de los miembros Header.AceFlags, Header.AceFlags y Header.AceSize deben establecerse explícitamente por la aplicación.
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) |