AuditLogLocation 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
セキュリティ関連のイベント ログが書き込まれる場所を指定します。
public enum class AuditLogLocation
public enum AuditLogLocation
type AuditLogLocation =
Public Enum AuditLogLocation
- 継承
フィールド
Application | 1 | イベント ログ内のアプリケーション ログを指定します。 |
Default | 0 | 既定の場所を指定します。これは、オペレーティング システムによって決定されます。 セキュリティ ログへの書き込みがサポートされている場合 (Windows Vista および Windows Server 2003 以降のプラットフォームなど)、既定のログの場所はセキュリティ ログです。 それ以外の場合 (Windows XP SP2 など)、既定のログの場所はアプリケーション ログです。 |
Security | 2 | イベント ログにセキュリティ ログを指定します。 呼び出し元のスレッドは、 |
例
次の例では、 プロパティを ServiceSecurityAuditBehavior.AuditLogLocation いずれかの値に AuditLogLocation
設定します。
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
注釈
呼び出し元の認証や承認を必要とする Windows Communication Foundation (WCF) アプリケーションを作成する場合は、成功、失敗、またはその両方について、セキュリティに関連するイベントを記録するように指定できます。 ログの場所は、この列挙体によって決定されます。
監査ログのレベルは、MessageAuthenticationAuditLevel クラスの ServiceAuthorizationAuditLevel プロパティまたは ServiceSecurityAuditBehavior プロパティを AuditLevel 値のいずれかに設定することで指定します。
serviceSecurityAudit バインドを使用して監査動作を<指定することもできます。>
重要
プロパティが AuditLogLocation Security に設定されていて Audit Object Access
、 で Local Security Policy
設定されていない場合、監査イベントはセキュリティ ログに書き込まれません。 エラーが返らない場合でも、監査エントリはセキュリティ ログに書き込まれません。 さらに、呼び出し元のスレッドは、SeAuditPrivilege
をセキュリティ ログに書き込めるようにしておく必要があります。
オペレーティング システムに依存する既定値
プロパティを既定値に設定すると、オペレーティング システムによって、実際に書き込まれるログが決定されます。 詳細については、「監査」を参照してください。
適用対象
こちらもご覧ください
.NET