Freigeben über


ServiceSecurityAuditBehavior Klasse

Definition

Legt das Überwachungsverhalten für Sicherheitsereignisse fest. Im Allgemeinen bestehen die Sicherheitsereignisse aus Authentifizierungsereignissen wie Transport, Nachricht oder Negotiate-Authentifizierung und Autorisierungsereignis. Weitere Informationen finden Sie unter 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
Vererbung
ServiceSecurityAuditBehavior
Implementiert

Beispiele

Mithilfe des folgenden Codes wird eine Instanz der ServiceHost-Klasse erstellt, und der Verhaltensauflistung wird ein neues ServiceSecurityAuditBehavior hinzugefügt.

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

Hinweise

Die ServiceSecurityAuditBehavior -Klasse wird verwendet, um windows Communication Foundation (WCF)-Authentifizierungsereignisse zu überwachen. Ist die Überwachung aktiviert, können entweder erfolgreiche oder fehlgeschlagene Authentifizierungsversuche (oder beides) überwacht werden. Die Ereignisse werden in eines der drei Ereignisprotokolle geschrieben: das Anwendungs-, Sicherheits- oder Standardprotokoll für die Betriebssystemversion. Die Ereignisprotokolle können alle mit der Windows-Ereignisanzeige angezeigt werden.

Geben Sie mithilfe dieser Klasse an, in welches Ereignisprotokoll geschrieben werden soll sowie welche Arten von Authentifizierungsereignissen geschrieben werden sollen. Sie können auch angeben, ob Überwachungsfehler unterdrückt werden sollen, indem Sie die SuppressAuditFailure-Eigenschaft auf false festlegen (die Standardeinstellung ist true).

Weitere Informationen zum Überwachen von Sicherheitsereignissen für WCF-Anwendungen finden Sie unter Überwachung.

Verwenden Sie serviceSecurityAudit, um das Überwachungsverhalten in der <Konfiguration anzugeben.>

Konstruktoren

ServiceSecurityAuditBehavior()

Initialisiert eine neue Instanz der ServiceSecurityAuditBehavior-Klasse.

Eigenschaften

AuditLogLocation

Dient zum Abrufen oder Festlegen des Speicherorts, in den sicherheitsbezogene Ereignisprotokolle geschrieben werden.

MessageAuthenticationAuditLevel

Ruft den Typ der auf Nachrichtenebene zu überprüfenden Authentifizierungsereignisse ab oder legt ihn fest.

ServiceAuthorizationAuditLevel

Ruft den Typ der auf Dienstebene zu überprüfenden Autorisierungsereignisse ab oder legt ihn fest.

SuppressAuditFailure

Hiermit wird ein Wert abgerufen oder festgelegt, der angibt, ob durch einen Überwachungsfehler die Anwendung beeinträchtigt wird.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

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

Übergibt benutzerdefinierte Daten an Bindungselemente, um die Vertragsimplementierung zu unterstützen.

IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase)

Stellt die Funktion zum Ausführen von Eigenschaftswerten zur Laufzeit oder zum Einfügen von benutzerdefinierten Erweiterungsobjekten, wie Fehlerhandler, Nachrichten- oder Parameterinterceptoren, Sicherheitserweiterungen und anderen benutzerdefinierten Erweiterungsobjekten, bereit.

IServiceBehavior.Validate(ServiceDescription, ServiceHostBase)

Nicht implementiert.

Gilt für: