Dienstüberwachungsverhalten
Dieses Beispiel zeigt, wie das ServiceSecurityAuditBehavior verwendet werden kann, um die Überwachung von Sicherheitsereignissen während Dienstvorgängen zu aktivieren. Dieses Beispiel basiert auf Erste Schritte. Dienst und Client werden mithilfe von <wsHttpBinding> konfiguriert. Das mode
-Attribut von <security> wurde auf Message
und clientCredentialType
wurde auf Windows
gesetzt. In diesem Beispiel ist der Client eine Konsolenanwendung (.exe), und der Dienst wird von IIS (Internet Information Services, Internetinformationsdienste) gehostet.
Hinweis
Die Setupprozedur und die Buildanweisungen für dieses Beispiel befinden sich am Ende dieses Themas.
Die Dienstkonfigurationsdatei verwendet das serviceSecurityAudit
-Element, um Überwachung zu konfigurieren.
<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>
Wenn Sie das Beispiel ausführen, werden die Anforderungen und Antworten für den Vorgang im Clientkonsolenfenster angezeigt. Drücken Sie im Konsolenfenster die EINGABETASTE, um den Client zu schließen.
Die resultierenden Überwachungsprotokolle können in der Ereignisanzeige angezeigt werden. Standardmäßig können die Überwachungsereignisse unter Windows XP im Anwendungsprotokoll und unter Windows Server 2003 und Windows Vista im Sicherheitsprotokoll angezeigt werden. Unter Windows Server 2008 und Windows 7 können die Überwachungsereignisse standardmäßig in den Anwendungs- und Dienstprotokollen eingesehen werden. Der Speicherort von Überwachungsereignissen kann durch Festlegen des auditLogLocation
-Attributs auf „Application“ oder „Security“ angegeben werden. Weitere Informationen finden Sie unter Gewusst wie: Überwachen von Sicherheitsereignissen. Wenn die Ereignisse in das Sicherheitsprotokoll geschrieben werden, sollte „LocalSecurityPolicy-> Objektzugriff aktivieren“ auf „Erfolg“ und „Fehler“ festgelegt werden.
Im Ereignisprotokoll ist die Quelle der Überwachungsereignisse "ServiceModel Audit 3.0.0.0". Nachrichtenauthentifizierungsüberwachungs-Datensätze weisen die Kategorie "MessageAuthentication" auf, während Dienstautorisierungsüberwachungs-Datensätze die Kategorie 'ServiceAuthorization' aufweisen.
Ereignisse der Nachrichtenauthentifizierungsüberwachung zeigen an, ob die Nachricht manipuliert wurde, abgelaufen ist und ob der Client für den Dienst authentifiziert werden kann. Sie enthalten Informationen darüber, ob die Authentifizierung erfolgreich war oder fehlgeschlagen ist, sowie Informationen über die Identität des Clients und über den Endpunkt, an den die Nachricht zusammen mit der der Nachricht zugewiesenen Aktion gesendet wurde.
Ereignisse der Dienstautorisierungsüberwachung enthalten die Autorisierungsentscheidung, die vom Dienstautorisierungs-Manager getroffen wird. Sie enthalten Informationen darüber, ob die Autorisierung erfolgreich war oder fehlgeschlagen ist, sowie Informationen über die Identität des Clients, den Endpunkt, an den die Nachricht gesendet wurde, die der Nachricht zugewiesene Aktion, die Kennung des Autorisierungskontexts, der aus der eingehenden Nachricht generiert wurde, und den Typ des Autorisierungs-Managers, der die Zugriffsentscheidung getroffen hat.
So können Sie das Beispiel einrichten, erstellen und ausführen
Stellen Sie sicher, dass Sie die Beispiele zum einmaligen Setupverfahren für Windows Communication Foundation ausgeführt haben.
Um die C#- oder Visual Basic .NET-Edition der Projektmappe zu erstellen, befolgen Sie die unter Building the Windows Communication Foundation Samplesaufgeführten Anweisungen.
Wenn Sie das Beispiel in einer Einzelcomputer- oder einer computerübergreifenden Konfiguration ausführen möchten, folgen Sie den Anweisungen unter Durchführen der Windows Communication Foundation-Beispiele.