Comportamento de auditoria de serviço
Este exemplo demonstra como usar o para habilitar a ServiceSecurityAuditBehavior auditoria de eventos de segurança durante operações de serviço. Este exemplo é baseado em Introdução. O serviço e o cliente foram configurados usando o wsHttpBinding>.< O mode
atributo da< segurança> foi definido como Message
e clientCredentialType
foi definido como Windows
. Neste exemplo, o cliente é um aplicativo de console (.exe) e o serviço é hospedado pelo IIS (Serviços de Informações da Internet).
Nota
O procedimento de configuração e as instruções de compilação para este exemplo estão localizados no final deste tópico.
O arquivo de configuração de serviço usa o elemento para configurar a serviceSecurityAudit
auditoria.
<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>
Quando você executa o exemplo, as solicitações de operação e as respostas são exibidas na janela do console do cliente. Pressione ENTER na janela do console para desligar o cliente.
Os logs de auditoria resultantes podem ser vistos executando o Visualizador de Eventos. Por padrão, no Windows XP os eventos de auditoria podem ser vistos no Log de Aplicativos, enquanto no Windows Server 2003 e no Windows Vista, os eventos de auditoria podem ser vistos no Log de Segurança. No Windows Server 2008 e no Windows 7, os eventos de auditoria podem ser vistos nos logs de Aplicativos e Serviços. O local dos eventos de auditoria pode ser especificado definindo o auditLogLocation
atributo como "Aplicativo" ou "Segurança". Para obter mais informações, consulte Como auditar eventos de segurança. Se os eventos forem gravados no log de segurança, o LocalSecurityPolicy-> Enable Object Access deve ser definido como "Success" e "Failure".
Ao examinar o log de eventos, a origem dos eventos de auditoria é "ServiceModel Audit 3.0.0.0". Os registros de auditoria de autenticação de mensagem têm uma categoria de "MessageAuthentication", enquanto os registros de auditoria de autorização de serviço têm uma categoria de "ServiceAuthorization".
Os eventos de auditoria de autenticação de mensagem abrangem se a mensagem foi adulterada, se a mensagem expirou e se o cliente pode se autenticar no serviço. Eles fornecem informações sobre se a autenticação foi bem-sucedida ou falhou, juntamente com a identidade do cliente e o ponto de extremidade para o qual a mensagem foi enviada, juntamente com a ação associada à mensagem.
Os eventos de auditoria de autorização de serviço abrangem a decisão de autorização tomada por um gerente de autorização de serviço. Eles fornecem informações sobre se a autorização foi bem-sucedida ou falhou, juntamente com a identidade do cliente, o ponto de extremidade para o qual a mensagem foi enviada, a ação associada à mensagem, o identificador do contexto de autorização que foi gerado a partir da mensagem de entrada e o tipo do gerenciador de autorização que tomou a decisão de acesso.
Para configurar, compilar e executar o exemplo
Certifique-se de ter executado o procedimento de instalação única para os exemplos do Windows Communication Foundation.
Para criar a edição C# ou Visual Basic .NET da solução, siga as instruções em Criando os exemplos do Windows Communication Foundation.
Para executar o exemplo em uma configuração de computador único ou entre computadores, siga as instruções em Executando os exemplos do Windows Communication Foundation.