Compartir a través de


Estructura ACL (winnt.h)

La estructura de ACL es el encabezado de una lista de control de acceso (ACL). Una ACL completa consta de una estructura de ACL seguida de una lista ordenada de cero o más entradas de control de acceso (ACE).

Sintaxis

typedef struct _ACL {
  BYTE AclRevision;
  BYTE Sbz1;
  WORD AclSize;
  WORD AceCount;
  WORD Sbz2;
} ACL;

Miembros

AclRevision

Especifica el nivel de revisión de la ACL. Este valor debe ser ACL_REVISION, a menos que la ACL contenga una ACE específica del objeto, en cuyo caso este valor debe ser ACL_REVISION_DS. Todos los ACA de una ACL deben estar en el mismo nivel de revisión.

Sbz1

Especifica un byte cero de relleno que alinea el miembro AclRevision en un límite de 16 bits.

AclSize

Especifica el tamaño, en bytes, de la ACL. Este valor incluye la estructura ACL , todos los ASE y la memoria potencial no utilizada.

AceCount

Especifica el número de ACL almacenados en la ACL.

Sbz2

Especifica dos bytes cero de relleno que alinean la estructura de ACL en un límite de 32 bits.

Comentarios

Una ACL incluye una lista secuencial de cero o más ACE. Los ACA individuales de una ACL se numeran de 0 a n, donde n+1 es el número de ACA en la ACL. Al editar una ACL, una aplicación hace referencia a una ACE dentro de la ACL por el índice de la ACE.

Hay dos tipos de ACL: discrecional y sistema.

Una lista de control de acceso discrecional (DACL) se controla mediante el propietario de un objeto o cualquier persona a la que se le conceda acceso WRITE_DAC al objeto. Especifica el acceso que usuarios y grupos concretos pueden tener a un objeto. Por ejemplo, el propietario de un archivo puede usar una DACL para controlar qué usuarios y grupos pueden y no pueden tener acceso al archivo.

Un objeto también puede tener información de seguridad de nivel de sistema asociada, en forma de una lista de control de acceso del sistema (SACL) controlada por un administrador del sistema. Una SACL permite al administrador del sistema auditar los intentos de obtener acceso a un objeto.

Para obtener una lista de las estructuras ACE definidas actualmente, consulte ACE.

Actualmente no se admite una cuarta estructura ACE, SYSTEM_ALARM_ACE.

La estructura de la ACL se debe tratar como si fuera opaca y las aplicaciones no intentan trabajar directamente con sus miembros. Para asegurarse de que las ACL sean semánticamente correctas, las aplicaciones pueden usar las funciones enumeradas en la sección Ver también para crear y manipular ACL.

Cada ACL y la estructura ACE comienzan en un límite DWORD .

El tamaño máximo de una ACL, incluidos sus ASE, es de 64 KB.

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 (incluya Windows.h)

Consulte también

AddAce

DeleteAce

GetAclInformation

GetSecurityDescriptorDacl

GetSecurityDescriptorSacl

InitializeAcl

IsValidAcl

SetAclInformation

SetSecurityDescriptorDacl

SetSecurityDescriptorSacl