Partilhar via


ServiceSecurityAuditBehavior Classe

Definição

Especifica o comportamento de auditoria de eventos de segurança. Em geral, os eventos de segurança consistem em eventos de autenticação como transporte, mensagem ou autenticação do tipo negociar e evento de autorização. Para obter mais informações, consulte ServiceAuthorizationManager.

public ref class ServiceSecurityAuditBehavior sealed : System::ServiceModel::Description::IServiceBehavior
public sealed class ServiceSecurityAuditBehavior : System.ServiceModel.Description.IServiceBehavior
type ServiceSecurityAuditBehavior = class
    interface IServiceBehavior
Public NotInheritable Class ServiceSecurityAuditBehavior
Implements IServiceBehavior
Herança
ServiceSecurityAuditBehavior
Implementações

Exemplos

O código a seguir cria uma instância da ServiceHost classe e adiciona uma nova ServiceSecurityAuditBehavior à coleção de comportamentos.

public static void Main()
{
    // Get base address from appsettings in configuration.
    Uri baseAddress = new Uri(ConfigurationManager.
        AppSettings["baseAddress"]);

    // Create a ServiceHost for the CalculatorService type
    // and provide the base address.
    using (ServiceHost serviceHost = new
        ServiceHost(typeof(CalculatorService), baseAddress))
    {
        // Create a new auditing behavior and set the log location.
        ServiceSecurityAuditBehavior newAudit =
            new ServiceSecurityAuditBehavior();
        newAudit.AuditLogLocation =
            AuditLogLocation.Application;
        newAudit.MessageAuthenticationAuditLevel =
            AuditLevel.SuccessOrFailure;
        newAudit.ServiceAuthorizationAuditLevel =
            AuditLevel.SuccessOrFailure;
        newAudit.SuppressAuditFailure = false;
        // Remove the old behavior and add the new.
        serviceHost.Description.
            Behaviors.Remove<ServiceSecurityAuditBehavior>();
        serviceHost.Description.Behaviors.Add(newAudit);
        // Open the ServiceHostBase to create listeners
        // and start listening for messages.
        serviceHost.Open();

        // The service can now be accessed.
        Console.WriteLine("The service is ready.");
        Console.WriteLine("Press <ENTER> to terminate service.");
        Console.WriteLine();
        Console.ReadLine();

        // Close the ServiceHostBase to shutdown the service.
        serviceHost.Close();
    }
}
Public Shared Sub Main() 
    ' Get base address from appsettings in configuration.
    Dim baseAddress As New Uri(ConfigurationManager.AppSettings("baseAddress"))
    
    ' Create a ServiceHost for the CalculatorService type 
    ' and provide the base address.
    Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)
    Try
        ' Create a new auditing behavior and set the log location.
        Dim newAudit As New ServiceSecurityAuditBehavior()
        newAudit.AuditLogLocation = AuditLogLocation.Application
        newAudit.MessageAuthenticationAuditLevel = _
            AuditLevel.SuccessOrFailure
        newAudit.ServiceAuthorizationAuditLevel = _
            AuditLevel.SuccessOrFailure
        newAudit.SuppressAuditFailure = False
        ' Remove the old behavior and add the new.
        serviceHost.Description.Behaviors.Remove(Of ServiceSecurityAuditBehavior)
        serviceHost.Description.Behaviors.Add(newAudit)
        ' Open the ServiceHostBase to create listeners 
        ' and start listening for messages.
        serviceHost.Open()
        
        ' The service can now be accessed.
        Console.WriteLine("The service is ready.")
        Console.WriteLine("Press <ENTER> to terminate service.")
        Console.WriteLine()
        Console.ReadLine()
        
        ' Close the ServiceHostBase to shutdown the service.
        serviceHost.Close()
    Finally
    End Try

End Sub

Comentários

A ServiceSecurityAuditBehavior classe é usada para auditar eventos de autenticação do WCF (Windows Communication Foundation). Quando a auditoria está habilitada, as tentativas de autenticação bem-sucedidas ou com falha (ou ambas) podem ser auditadas. Os eventos são gravados em um dos três logs de eventos: aplicativo, segurança ou o log padrão para a versão do sistema operacional. Todos os logs de eventos podem ser exibidos usando o visualizador de eventos Windows.

Use essa classe para especificar em qual log de eventos é gravado, bem como tipos de eventos de autenticação a serem gravados. Você também pode especificar se deseja suprimir falhas de auditoria definindo a SuppressAuditFailure propriedade false como (o padrão é true).

Para obter mais informações sobre como auditar eventos de segurança para aplicativos WCF, consulte Auditoria.

Para especificar o comportamento de auditoria na configuração, use o <serviceSecurityAudit>.

Construtores

ServiceSecurityAuditBehavior()

Inicializa uma nova instância da classe ServiceSecurityAuditBehavior.

Propriedades

AuditLogLocation

Obtém ou define o local em que os logs de eventos relacionados à segurança são gravados.

MessageAuthenticationAuditLevel

Obtém ou define o tipo de eventos de autenticação a serem auditados no nível da mensagem.

ServiceAuthorizationAuditLevel

Obtém ou define o tipo de eventos de autorização a serem auditados no nível de serviço.

SuppressAuditFailure

Obtém ou define um valor que indica se a falha em auditar afeta ou não o aplicativo.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection)

Passa dados personalizados para elementos de associação para dar suporte à implementação do contrato.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Fornece a capacidade de alterar valores de propriedade de tempo de execução ou inserir objetos de extensão personalizados, como manipuladores de erro, interceptores de mensagens ou parâmetros, extensões de segurança e outros objetos de extensão personalizados.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Não implementado.

Aplica-se a