英語で読む

次の方法で共有


AuditLogLocation 列挙型

定義

セキュリティ関連のイベント ログが書き込まれる場所を指定します。

C#
public enum AuditLogLocation
継承
AuditLogLocation

フィールド

名前 説明
Application 1

イベント ログ内のアプリケーション ログを指定します。

Default 0

既定の場所を指定します。これは、オペレーティング システムによって決定されます。 セキュリティ ログへの書き込みがサポートされている場合 (Windows Vista および Windows Server 2003 以降のプラットフォームなど)、既定のログの場所はセキュリティ ログです。 それ以外の場合 (Windows XP SP2 など)、既定のログの場所はアプリケーション ログです。

Security 2

イベント ログにセキュリティ ログを指定します。 呼び出し元のスレッドは、SeAuditPrivilege をセキュリティ ログに書き込めるようにしておく必要があります。

次の例では、 プロパティを ServiceSecurityAuditBehavior.AuditLogLocation いずれかの値に AuditLogLocation 設定します。

C#
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();
    }
}

注釈

呼び出し元の認証や承認を必要とする Windows Communication Foundation (WCF) アプリケーションを作成する場合は、成功、失敗、またはその両方について、セキュリティに関連するイベントを記録するように指定できます。 ログの場所は、この列挙体によって決定されます。

監査ログのレベルは、MessageAuthenticationAuditLevel クラスの ServiceAuthorizationAuditLevel プロパティまたは ServiceSecurityAuditBehavior プロパティを AuditLevel 値のいずれかに設定することで指定します。

serviceSecurityAudit バインドを使用して監査動作を<指定することもできます。>

重要

プロパティが AuditLogLocation Security に設定されていて Audit Object Access 、 で Local Security Policy設定されていない場合、監査イベントはセキュリティ ログに書き込まれません。 エラーが返らない場合でも、監査エントリはセキュリティ ログに書き込まれません。 さらに、呼び出し元のスレッドは、SeAuditPrivilege をセキュリティ ログに書き込めるようにしておく必要があります。

オペレーティング システムに依存する既定値

プロパティを既定値に設定すると、オペレーティング システムによって、実際に書き込まれるログが決定されます。 詳細については、「監査」を参照してください。

適用対象

製品 バージョン
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

こちらもご覧ください