Share via


estructura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE (winnt.h)

La estructura de SYSTEM_AUDIT_CALLBACK_OBJECT_ACE define una entrada de control de acceso (ACE) para una lista de control de acceso del sistema (SACL). La ACE puede auditar el acceso a un objeto o subobjetos, como conjuntos de propiedades o propiedades. La ACE contiene un conjunto de derechos de acceso, un GUID que identifica el tipo de objeto o subobjeto, y un identificador de seguridad (SID) que identifica al administrador para el que el sistema auditará el acceso. La ACE también contiene un GUID y un conjunto de marcadores que controlan la herencia de la ACE mediante objetos secundarios.

Cuando se llama a la función AuthzAccessCheck , cada estructura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE contenida en la DACL de una estructura de SECURITY_DESCRIPTOR que se pasa a través de un puntero a la función AuthzAccessCheck invoca una llamada a la función AuthzAccessCheckCallback definida por la aplicación, en la que se pasa un puntero a la estructura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE encontrada en el parámetro pAce .

Sintaxis

typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
  ACE_HEADER  Header;
  ACCESS_MASK Mask;
  DWORD       Flags;
  GUID        ObjectType;
  GUID        InheritedObjectType;
  DWORD       SidStart;
} SYSTEM_AUDIT_CALLBACK_OBJECT_ACE, *PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;

Miembros

Header

ACE_HEADER estructura que especifica el tamaño y el tipo de ACE. Contiene marcas que controlan la herencia de ace por objetos secundarios. La estructura también contiene marcas que indican si la ACE audita los intentos de acceso correctos, los intentos de acceso erróneos o ambos. El miembro AceType de la estructura ACE_HEADER debe establecerse en SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE y el miembro AceSize debe establecerse en el número total de bytes asignados para la estructura de SYSTEM_AUDIT_CALLBACK_OBJECT_ACE .

Mask

Una ACCESS_MASK que especifica los derechos de acceso que auditará el sistema para los intentos de acceso por parte del administrador.

Flags

Conjunto de marcas de bits que indican si los miembros ObjectType y InheritedObjectType contienen GUID. Este miembro puede ser una combinación de los valores siguientes. Establezca todos los bits no definidos en cero.

Valor Significado
ACE_OBJECT_TYPE_PRESENT
El miembro ObjectType contiene un GUID.
ACE_INHERITED_OBJECT_TYPE_PRESENT
El miembro InheritedObjectType contiene un GUID.

ObjectType

Estructura GUID que identifica un conjunto de propiedades, una propiedad, un derecho extendido o un tipo de objeto secundario.

Este miembro solo es válido si el bit de ACE_OBJECT_TYPE_PRESENT está establecido en el miembro Flags . De lo contrario, se omite ObjectType .

El propósito de este GUID depende de los derechos de acceso especificados en el miembro Mask .

Este miembro puede ser uno de los siguientes valores.

Valor Significado
ADS_RIGHT_DS_READ_PROP o ADS_RIGHT_DS_WRITE_PROP
El GUID objectType identifica un conjunto de propiedades o una propiedad del objeto. La ACE controla la auditoría de los intentos del administrador de leer o escribir la propiedad o el conjunto de propiedades.
ADS_RIGHT_DS_CONTROL_ACCESS
El GUID objectType identifica un derecho de acceso extendido.
ADS_RIGHT_DS_CREATE_CHILD
El GUID objectType identifica un tipo de objeto secundario. La ACE controla la auditoría de los intentos del administrador de crear este tipo de objeto secundario.
ADS_RIGHT_DS_SELF
El GUID objectType identifica una escritura validada.

InheritedObjectType

Estructura GUID que identifica el tipo de objeto secundario que puede heredar la ACE.

Este miembro solo es válido si el bit de ACE_INHERITED_OBJECT_TYPE_PRESENT está establecido en el miembro Flags . Si no se establece ese bit, InheritedObjectType se omite y todos los tipos de objetos secundarios pueden heredar la ACE. En cualquier caso, la herencia también se controla mediante las marcas de herencia de la ACE_HEADER, así como cualquier protección contra la herencia colocada en los objetos secundarios.

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

Si no se especifica el GUID ObjectType ni InheritedObjectType , la estructura de SYSTEM_AUDIT_CALLBACK_OBJECT_ACE tiene la misma semántica que la estructura de SYSTEM_AUDIT_CALLBACK_ACE . En ese caso, use la estructura SYSTEM_AUDIT_CALLBACK_ACE porque es más pequeña y eficaz.

Una ACL que contiene una estructura de SYSTEM_AUDIT_CALLBACK_OBJECT_ACE debe especificar el número de revisión ACL_REVISION_DS en su estructura de ACE_HEADER .

Cuando se crea una estructura SYSTEM_AUDIT_CALLBACK_OBJECT_ACE , se debe asignar memoria suficiente para acomodar las estructuras GUID en los miembros ObjectType y InheritedObjectType , si existe uno o ambos, así como para dar cabida al SID completo del administrador en el miembro SidStart y la memoria contiguo que sigue.

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

ACL

AddAuditAccessObjectAce

GUID

SID