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
Access Control cliente/servidor