共用方式為


服務稽核行為

此範例示範如何使用 ServiceSecurityAuditBehavior ,在服務作業期間啟用安全性事件的稽核。 此範例是以 用戶入門為基礎。 服務與用戶端已使用 <wsHttpBinding> 進行設定。 安全性mode<的> 屬性已設定為 Message ,且clientCredentialType已設定為 Windows。 在此範例中,用戶端是控制台應用程式(.exe),而服務是由 Internet Information Services (IIS) 所裝載。

備註

此範例的安裝程式和建置指示位於本主題結尾。

服務組態檔會使用 serviceSecurityAudit 項目來設定稽核。

<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>

當您執行範例時,作業要求和回應會顯示在用戶端控制台視窗中。 在主控台視窗中按 ENTER 鍵以關閉用戶端。

執行事件查看器即可看到產生的稽核記錄。 根據預設,在 Windows XP 上,稽核事件可以在應用程式記錄檔中看到,而在 Windows Server 2003 和 Windows Vista 上,可以在安全性記錄中看到稽核事件。 在 Windows Server 2008 和 Windows 7 上,您可以在應用程式和服務記錄中看到稽核事件。 您可以將 屬性設定 auditLogLocation 為 「Application」 或 「Security」 來指定稽核事件的位置。 如需詳細資訊,請參閱 如何:稽核安全性事件。 如果在安全性記錄中寫入事件,則 LocalSecurityPolicy-> Enable Object Access 應設定為 「成功」和「失敗」。

查看事件記錄檔時,稽核事件的來源是 “ServiceModel Audit 3.0.0.0”。 訊息驗證稽核記錄的類別為 「MessageAuthentication」,而服務授權稽核記錄的類別為 “ServiceAuthorization”。

訊息驗證稽核事件涵蓋訊息是否遭到竄改、訊息是否已過期,以及用戶端是否可以向服務驗證。 它們提供驗證成功或失敗以及用戶端身分識別的相關信息,以及訊息傳送至的端點,以及與訊息相關聯的動作。

服務授權稽核事件涵蓋服務授權管理員所做的授權決策。 它們提供授權成功或失敗以及用戶端身分識別、訊息傳送至的端點、與訊息相關聯的動作、從傳入訊息產生的授權內容的標識碼,以及進行存取決策的授權管理員類型的相關信息。

要設定、建置和執行範例,請執行以下步驟:

  1. 請確定您已針對 Windows Communication Foundation 範例 執行One-Time 安裝程式。

  2. 若要建置解決方案的 C# 或 Visual Basic .NET 版本,請遵循建置 Windows Communication Foundation 範例 中的指示。

  3. 若要在單一或跨計算機組態中執行範例,請遵循 執行 Windows Communication Foundation 範例中的指示。

另請參閱