Comportamiento de auditoría de servicio
Este ejemplo muestra cómo utilizar ServiceSecurityAuditBehavior para habilitar la auditoría de eventos de seguridad durante las operaciones de servicio. Este ejemplo se basa en la Introducción. El servicio y el cliente se han configurado con <wsHttpBinding>. El atributo mode
de <seguridad> se ha establecido en Message
y clientCredentialType
se ha establecido en Windows
. En este ejemplo, el cliente es una aplicación de consola (.exe) y los Servicios de Internet Information Server (IIS) hospedan el servicio.
Nota
El procedimiento de instalación y las instrucciones de compilación de este ejemplo se encuentran al final de este tema.
El archivo de configuración de servicio utiliza el elemento serviceSecurityAudit
para configurar la auditoría.
<behaviors>
<serviceBehaviors>
<behavior name="CalculatorServiceBehavior">
...
<!-- serviceSecurityAudit allows specification of audit location
and whether to audit success, failure or both. This service
logs success and failure of messageAuthentication
to the default location -->
<serviceSecurityAudit auditLogLocation ="Default" messageAuthenticationAuditLevel = "SuccessOrFailure" />
</behavior>
</serviceBehaviors>
</behaviors>
Al ejecutar el ejemplo, las solicitudes y respuestas de la operación se muestran en la ventana de la consola del cliente. Presione ENTRAR en la ventana de la consola para cerrar el cliente.
Los registros de auditoría resultantes se pueden ver al ejecutar el Visor de eventos. De forma predeterminada, en Windows XP los eventos de auditoría se pueden ver en el registro de aplicaciones, mientras que en Windows Server 2003 y Windows Vista, los eventos de auditoría se pueden ver en el registro de seguridad. En Windows Server 2008 y Windows 7, los eventos de auditoría se pueden ver en los registros de aplicaciones y servicios. Se puede especificar la ubicación de los eventos de auditoría mediante el establecimiento del atributo auditLogLocation
en "Aplicación" o "Seguridad". Para obtener más información, vea Cómo auditar los eventos de seguridad. Si los eventos se escriben en el registro de seguridad, la opción de LocalSecurityPolicy-> Habilitar el acceso de objetos debería configurarse como "Success" y "Failure".
Al examinar el registro de eventos, el origen de los eventos de auditoría es "ServiceModel Audit 3.0.0.0". Los registros de auditoría de autenticación de mensajes tienen una categoría de "MessageAuthentication", mientras que los registros de auditoría de autorización de servicio tienen una categoría de "ServiceAuthorization".
Los eventos de auditoría de autenticación de mensajes incluyen si el mensaje se manipuló, si el mensaje ha expirado y si el cliente se puede autenticar en el servicio. Proporcionan información sobre si la autenticación fue correcta o no, así como la identidad del cliente, y el extremo al que se envió el mensaje, junto con la acción asociada al mensaje.
Los eventos de auditoría de autorización de servicio incluyen la decisión de la autorización realizada por un administrador de autorización del servicio. Proporcionan información sobre si la autorización tuvo éxito o no, así como la identidad del cliente, el extremo al que se envió el mensaje, la acción asociada al mensaje, el identificador del contexto de autorización que generó el mensaje entrante y el tipo del administrador de autorización que tomó la decisión sobre el acceso.
Configurar, compilar y ejecutar el ejemplo
Asegúrese de que ha realizado el procedimiento de instalación única para los ejemplos de Windows Communication Foundation.
Para compilar el código C# o Visual Basic .NET Edition de la solución, siga las instrucciones de Building the Windows Communication Foundation Samples.
Para ejecutar el ejemplo en una configuración con un solo equipo o con varios, siga las instrucciones de Ejecución de los ejemplos de Windows Communication Foundation.