Función ObjectPrivilegeAuditAlarmA (winbase.h)
La función ObjectPrivilegeAuditAlarm genera un mensaje de auditoría en el registro de eventos de seguridad. Un servidor protegido puede usar esta función para registrar intentos de un cliente para usar un conjunto de privilegios especificado con un identificador abierto a un objeto privado. Actualmente no se admiten alarmas.
Sintaxis
BOOL ObjectPrivilegeAuditAlarmA(
[in] LPCSTR SubsystemName,
[in] LPVOID HandleId,
[in] HANDLE ClientToken,
[in] DWORD DesiredAccess,
[in] PPRIVILEGE_SET Privileges,
[in] BOOL AccessGranted
);
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 el mensaje de auditoría.
[in] HandleId
Puntero a un valor único que representa el identificador del cliente para el objeto .
[in] ClientToken
Identifica un token de acceso que representa al cliente que solicitó la operación. Este identificador debe haberse obtenido abriendo el token de un subproceso suplantando al cliente. El token debe estar abierto para TOKEN_QUERY acceso. La función usa este token para obtener la identidad del cliente para el mensaje de auditoría.
[in] DesiredAccess
Especifica una máscara de acceso que indica los tipos de acceso con privilegios que se usan o cuyo uso se está intentando. La función MapGenericMask puede asignar la máscara de acceso para que no contenga ningún tipo de acceso genérico.
[in] Privileges
Puntero a una estructura de PRIVILEGE_SET que contiene los privilegios que el cliente intentó usar. Los nombres de los privilegios aparecen en el mensaje de auditoría.
[in] AccessGranted
Indica si el intento del cliente de usar los privilegios se realizó correctamente. Si este valor es TRUE, el mensaje de auditoría indica que se ha realizado correctamente. Si este valor es FALSE, el mensaje de auditoría indica un error.
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 ObjectPrivilegeAuditAlarm no comprueba el acceso del cliente al objeto ni comprueba el token de acceso del cliente para determinar si los privilegios se mantienen o habilitan. Normalmente, llama a la función PrivilegeCheck para determinar si los privilegios especificados están habilitados en el token de acceso, llama a la función AccessCheck para comprobar el acceso del cliente al objeto y, a continuación, llama a ObjectPrivilegeAuditAlarm para registrar los resultados.
La función ObjectPrivilegeAuditAlarm requiere que el proceso de llamada tenga habilitado SE_AUDIT_NAME privilegios. La prueba de este privilegio siempre se realiza con el token principal del proceso de llamada, no con el token de suplantación del subproceso . Esto permite al proceso de llamada suplantar a un cliente durante la llamada.
Requisitos
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 (incluya Windows.h) |
Library | Advapi32.lib |
Archivo DLL | Advapi32.dll |
Consulte también
Funciones de cliente/servidor Access Control