WebAuthenticationSuccessAuditEvent クラス
アセンブリ: System.Web (system.web.dll 内)


運用および操作の担当者は、ASP.NET Health Monitoring を使用して、配置されている Web アプリケーションを管理できます。System.Web.Management 名前空間には、アプリケーションの状態データをパッケージ化する状態イベント型、およびそのデータを処理するプロバイダ型が含まれます。また、状態イベント管理を支援するサポート型も含まれます。
次の一覧に、ASP.NET で WebAuthenticationSuccessAuditEvent 型のイベントの生成対象となる機能を示します。
![]() |
---|
既定で、ASP.NET は監査エラーだけをログに記録するよう構成されます。これは、正常終了をログに記録するとシステム リソースが大量に消費されるためです。いつでも、正常終了をログに記録するように設定できます。 |
-
フォームの認証。正常と承認するための条件が監査されます。正常終了した監査結果には、認証されたユーザー名が記録されます。一方、監査がエラーになった場合、復号または検査でエラーになったチケットが原因であることが多く、ユーザー名は記録されません。どちらの場合もクライアントの IP アドレスは記録されます。関連するイベント監査コードは AuditFormsAuthenticationSuccess です。
-
メンバシップ。正常と承認するための条件が監査されます。監査が正常終了した場合もエラーになった場合も、試行したユーザー名が記録されます。どちらの監査フォームにも試行されたパスワードは記録されません。これは、有効なパスワードがログに残らないようにするためです。関連するイベント監査コードは AuditMembershipAuthenticationSuccess です。
WebAuthenticationSuccessAuditEvent が発生すると、既定で Authentication Success Events Raised パフォーマンス カウンタが更新されます。このパフォーマンス カウンタをシステム モニタ (PerfMon) に表示するには、[カウンタの追加] ウィンドウで [パフォーマンス オブジェクト] ドロップダウンリストの [ASP.NET] をクリックし、Authentication Success Events Raised パフォーマンス カウンタを選択して、[追加] ボタンをクリックします。詳細については、MSDN の「Using the System Monitor (PerfMon) with ASP.NET Applications」を参照してください。

次のコード例は 2 つの部分で構成されます。最初が構成ファイルの抜粋で、次が WebAuthenticationSuccessAuditEvent イベントをカスタマイズする方法を示すコードです。
次に示すのは、構成ファイルの provider セクションと eventMappings セクションの抜粋です。これらは既定で設定済みです。構成する必要があるのは、healthMonitoring セクションの rules 要素のセットアップだけです。
<healthMonitoring enabled="true" heartBeatInterval="0"> <providers> // Configure the provider to process // the health events. <add name="EventLogProvider" type="System.Web.Management.EventLogWebEventProvider, System.Web,Version=2.0.3600.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/> </providers> <eventMappings> <clear /> // Configure the custom event // to handle the audit events. <add name="SampleWebAuthenticationSuccessAuditEvent" type="SamplesAspNet.SampleWebAuthenticationSuccessAuditEvent, webauthsuccessaudit, Version=1.0.1735.23144, Culture=neutral, PublicKeyToken=dd969eda3f3f6ae1, processorArchitecture=MSIL" /> </eventMappings> <rules> <clear/> // Establish the connection between custom event // and the provider that must process it. <add name="Log Authentication Success Audits" eventName="SampleWebAuthenticationFailureAuditEvent" provider="EventLogProvider" profile="Custom" />\ </rules> </healthMonitoring>
WebAuthenticationSuccessAuditEvent イベントのカスタマイズ方法を次のコード例に示します。
Imports System Imports System.Text Imports System.Web Imports System.Web.Management ' Implements a custom WebAuthenticationSuccessAuditEvent class. Public Class SampleWebAuthenticationSuccessAuditEvent Inherits System.Web.Management.WebAuthenticationSuccessAuditEvent Private customCreatedMsg, customRaisedMsg As String ' Invoked in case of events identified only by their event code. Public Sub New(ByVal msg As String, ByVal eventSource _ As Object, ByVal eventCode As Integer, _ ByVal userName As String) MyBase.New(msg, eventSource, eventCode, userName) ' Perform custom initialization. customCreatedMsg = _ String.Format("Event created at: {0}", _ DateTime.Now.TimeOfDay.ToString()) End Sub 'New ' Invoked in case of events identified by their event code.and ' event detailed code. Public Sub New(ByVal msg As String, _ ByVal eventSource As Object, _ ByVal eventCode As Integer, _ ByVal detailedCode As Integer, _ ByVal userName As String) MyBase.New(msg, eventSource, eventCode, _ detailedCode, userName) ' Perform custom initialization. customCreatedMsg = _ String.Format( _ "Event created at: {0}", _ DateTime.Now.TimeOfDay.ToString()) End Sub 'New ' Raises the SampleWebAuthenticationSuccessAuditEvent. Public Overrides Sub Raise() ' Perform custom processing. customRaisedMsg = String.Format( _ "Event raised at: {0}", _ DateTime.Now.TimeOfDay.ToString()) ' Raise the event. WebBaseEvent.Raise(Me) End Sub 'Raise ' Obtains the current thread information. Public Function GetRequestInformation() _ As WebRequestInformation ' No customization is allowed. Return RequestInformation End Function 'GetRequestInformation 'Formats Web request event information. 'This method is invoked indirectly by the provider 'using one of the overloaded ToString methods. Public Overrides Sub FormatCustomEventDetails(ByVal formatter _ As WebEventFormatter) MyBase.FormatCustomEventDetails(formatter) ' Add custom data. formatter.AppendLine("") formatter.IndentationLevel += 1 formatter.AppendLine( _ "* SampleWebAuthenticationSuccessAuditEvent Start *") formatter.AppendLine( _ String.Format("Request path: {0}", _ RequestInformation.RequestPath)) formatter.AppendLine( _ String.Format("Request Url: {0}", _ RequestInformation.RequestUrl)) ' Display custom event timing. formatter.AppendLine(customCreatedMsg) formatter.AppendLine(customRaisedMsg) formatter.AppendLine( _ "* SampleWebAuthenticationSuccessAuditEvent End *") formatter.IndentationLevel -= 1 End Sub 'FormatCustomEventDetails End Class 'SampleWebAuthenticationSuccessAuditEvent
using System; using System.Text; using System.Web; using System.Web.Management; namespace SamplesAspNet { // Implements a custom WebAuthenticationSuccessAuditEvent class. public class SampleWebAuthenticationSuccessAuditEvent : System.Web.Management.WebAuthenticationSuccessAuditEvent { private string customCreatedMsg, customRaisedMsg; // Invoked in case of events identified only by their event code. public SampleWebAuthenticationSuccessAuditEvent( string msg, object eventSource, int eventCode, string userName): base(msg, eventSource, eventCode, userName) { // Perform custom initialization. customCreatedMsg = string.Format("Event created at: {0}" , DateTime.Now.TimeOfDay.ToString()); } // Invoked in case of events identified by their event code.and // event detailed code. public SampleWebAuthenticationSuccessAuditEvent( string msg, object eventSource, int eventCode, int detailedCode, string userName): base(msg, eventSource, eventCode, detailedCode, userName) { // Perform custom initialization. customCreatedMsg = string.Format("Event created at: {0}", DateTime.Now.TimeOfDay.ToString()); } // Raises the SampleWebAuthenticationSuccessAuditEvent. public override void Raise() { // Perform custom processing. customRaisedMsg = string.Format("Event raised at: {0}", DateTime.Now.TimeOfDay.ToString()); // Raise the event. WebBaseEvent.Raise(this); } // Obtains the current thread information. public WebRequestInformation GetRequestInformation() { // No customization is allowed. return RequestInformation; } //Formats Web request event information. //This method is invoked indirectly by the provider //using one of the overloaded ToString methods. public override void FormatCustomEventDetails(WebEventFormatter formatter) { base.FormatCustomEventDetails(formatter); // Add custom data. formatter.AppendLine(""); formatter.IndentationLevel += 1; formatter.AppendLine( "* SampleWebAuthenticationSuccessAuditEvent Start *"); formatter.AppendLine(string.Format("Request path: {0}", RequestInformation.RequestPath)); formatter.AppendLine(string.Format("Request Url: {0}", RequestInformation.RequestUrl)); // Display custom event timing. formatter.AppendLine(customCreatedMsg); formatter.AppendLine(customRaisedMsg); formatter.AppendLine( "* SampleWebAuthenticationSuccessAuditEvent End *"); formatter.IndentationLevel -= 1; } } }

System.Web.Management.WebBaseEvent
System.Web.Management.WebManagementEvent
System.Web.Management.WebAuditEvent
System.Web.Management.WebSuccessAuditEvent
System.Web.Management.WebAuthenticationSuccessAuditEvent


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- WebAuthenticationSuccessAuditEvent クラスのページへのリンク