Compartir a través de


Función ObjectOpenAuditAlarmA (winbase.h)

La función ObjectOpenAuditAlarm genera mensajes de auditoría cuando una aplicación cliente intenta obtener acceso a un objeto o para crear uno nuevo. Actualmente no se admiten alarmas.

Sintaxis

BOOL ObjectOpenAuditAlarmA(
  [in]           LPCSTR               SubsystemName,
  [in]           LPVOID               HandleId,
  [in]           LPSTR                ObjectTypeName,
  [in, optional] LPSTR                ObjectName,
  [in]           PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in]           HANDLE               ClientToken,
  [in]           DWORD                DesiredAccess,
  [in]           DWORD                GrantedAccess,
  [in, optional] PPRIVILEGE_SET       Privileges,
  [in]           BOOL                 ObjectCreation,
  [in]           BOOL                 AccessGranted,
  [out]          LPBOOL               GenerateOnClose
);

Parámetros

[in] SubsystemName

Puntero a una cadena terminada en null que especifica el nombre del subsistema que llama a la función. Esta cadena aparece en cualquier mensaje de auditoría que genere la función.

[in] HandleId

Puntero a un valor único que representa el identificador del cliente para el objeto. Si se deniega el acceso, se omite este parámetro.

Para la compatibilidad multiplataforma, el valor direccionado por este puntero debe tener un tamaño de bytes (LPVOID) largo.

[in] ObjectTypeName

Puntero a una cadena terminada en null que especifica el tipo de objeto al que el cliente solicita acceso. Esta cadena aparece en cualquier mensaje de auditoría que genere la función.

[in, optional] ObjectName

Puntero a una cadena terminada en null que especifica el nombre del objeto al que el cliente solicita acceso. Esta cadena aparece en cualquier mensaje de auditoría que genere la función.

[in] pSecurityDescriptor

Puntero a la estructura SECURITY_DESCRIPTOR para el objeto al que se accede.

[in] ClientToken

Identifica un token de acceso que representa al cliente que solicita la operación. Este identificador se debe obtener abriendo el token de un subproceso suplantando al cliente. El token debe estar abierto para TOKEN_QUERY acceso.

[in] DesiredAccess

Especifica la máscara de acceso deseada. Esta máscara debe haber sido asignada previamente por la función MapGenericMask para que no contenga derechos de acceso genéricos.

[in] GrantedAccess

Especifica una máscara de acceso que indica qué derechos de acceso se conceden. Esta máscara de acceso está pensada para ser el mismo valor establecido por una de las funciones de comprobación de acceso en su parámetro GrantedAccess . Algunos ejemplos de funciones de comprobación de acceso son AccessCheckAndAuditAlarm y AccessCheck.

[in, optional] Privileges

Puntero a una estructura de PRIVILEGE_SET que especifica el conjunto de privilegios necesarios para el intento de acceso. Este parámetro puede ser NULL.

[in] ObjectCreation

Especifica una marca que determina si la aplicación crea un nuevo objeto cuando se concede acceso. Cuando este valor es TRUE, la aplicación crea un nuevo objeto; cuando es FALSE, la aplicación abre un objeto existente.

[in] AccessGranted

Especifica una marca que indica si se concedió o denegó el acceso en una llamada anterior a una función de comprobación de acceso, como AccessCheck. Si se concedió acceso, este valor es TRUE. Si no es así, es FALSE.

[out] GenerateOnClose

Puntero a una marca establecida por la rutina de generación de auditoría cuando la función devuelve. Este valor se debe pasar a la función ObjectCloseAuditAlarm cuando se cierra el identificador de objeto.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

La función ObjectOpenAuditAlarm requiere que la aplicación que llama tenga habilitado el privilegio SE_AUDIT_NAME. La prueba de este privilegio siempre se realiza en el token principal del proceso de llamada, no en el token de suplantación del subproceso . Esto permite al proceso de llamada suplantar a un cliente durante la llamada.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winbase.h (incluye Windows.h)
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

AccessCheck

AccessCheckAndAuditAlarm

AreAllAccessesGranted

AreAnyAccessesGranted

Access Control cliente/servidor

Funciones de Access Control cliente/servidor

MapGenericMask

ObjectCloseAuditAlarm

ObjectDeleteAuditAlarm

ObjectPrivilegeAuditAlarm

PRIVILEGE_SET

PrivilegeCheck

PrivilegedServiceAuditAlarm

SECURITY_DESCRIPTOR