WebAuthenticationSuccessAuditEvent Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt Informationen zu erfolgreichen Authentifizierungsereignissen bereit.
public ref class WebAuthenticationSuccessAuditEvent : System::Web::Management::WebSuccessAuditEvent
public class WebAuthenticationSuccessAuditEvent : System.Web.Management.WebSuccessAuditEvent
type WebAuthenticationSuccessAuditEvent = class
inherit WebSuccessAuditEvent
Public Class WebAuthenticationSuccessAuditEvent
Inherits WebSuccessAuditEvent
- Vererbung
-
WebAuthenticationSuccessAuditEvent
Beispiele
Dieses Codebeispiel enthält zwei Teile: einen Konfigurationsdateiauszug, gefolgt von Code, der zeigt, wie das WebAuthenticationSuccessAuditEvent Ereignis angepasst wird.
Nachfolgend finden Sie einen Auszug aus den Abschnitten und eventMappings Abschnitten der Konfigurationsdateiprovider. Sie sind bereits standardmäßig festgelegt. Das einzige, was Sie tun müssen, besteht darin, das Setup für das rules Element im healthMonitoring Abschnitt bereitzustellen.
<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>
Der folgende Code zeigt, wie das WebAuthenticationSuccessAuditEvent Ereignis angepasst wird.
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;
}
}
}
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
' 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
' 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
' 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
End Class
Hinweise
ASP.NET Integritätsüberwachung ermöglicht es Produktions- und Betriebsmitarbeitern, bereitgestellte Webanwendungen zu verwalten. Der System.Web.Management Namespace enthält die Gesundheitsereignistypen, die für das Verpacken von Anwendungsintegritätsstatusdaten und die Anbieter-Typen für die Verarbeitung dieser Daten verantwortlich sind. Es enthält auch unterstützende Typen, die bei der Verwaltung von Integritätsereignissen helfen.
In der folgenden Liste werden die Features beschrieben, für die ASP.NET Ereignisse vom Typ WebAuthenticationSuccessAuditEvent auslöst.
Note
Standardmäßig ist ASP.NET so konfiguriert, dass Überwachungsfehlerbedingungen nur protokolliert werden, da die Protokollierung von Erfolgsbedingungen Systemressourcen stark belasten kann. Sie können das System immer so konfigurieren, dass die Erfolgsbedingungen protokolliert werden.
Formularauthentifizierung. Erfolgreiche Bedingungen werden überwacht. Erfolgsüberwachungen umfassen den Benutzernamen, der authentifiziert wurde. Fehlerüberwachungen enthalten stattdessen nicht den Benutzernamen, da sie in der Regel aus einem Ticket resultieren, bei dem die Entschlüsselung oder Validierung fehlgeschlagen ist. Beide enthalten die Client-IP-Adresse. Der zugehörige Ereignisüberwachungscode lautet AuditFormsAuthenticationSuccess.
Mitgliedschaft. Erfolgreiche Bedingungen werden überwacht. Sowohl Erfolgs- als auch Fehlerüberwachungen enthalten den Benutzernamen, der versucht wurde. Keine form of audit will contain the password that was attempted, because that would risking persisting a valid password in the log. Der zugehörige Ereignisüberwachungscode lautet AuditMembershipAuthenticationSuccess.
Wenn ein Ereignis WebAuthenticationSuccessAuditEvent ausgelöst wird, aktualisiert es standardmäßig den Leistungsindikator für Authentifizierungserfolge ausgelöst. Um diesen Leistungsindikator im Systemmonitor (PerfMon) anzuzeigen, wählen Sie im Zähler Fenster ASP.NET im Performance-Objekt Dropdownliste aus, wählen Sie den Leistungsindikator für Authentifizierungserfolge aus, und klicken Sie auf die Schaltfläche Add. Weitere Informationen finden Sie unter Using the System Monitor (PerfMon) with ASP.NET Applications.
Note
In den meisten Fällen können Sie die ASP.NET Integritätsüberwachungstypen wie implementiert verwenden, und Sie steuern das Integritätsüberwachungssystem, indem Sie Werte im Konfigurationsabschnitt healthMonitoring angeben. Sie können auch von den Integritätsüberwachungstypen abgeleitet werden, um eigene benutzerdefinierte Ereignisse und Anbieter zu erstellen. Ein Beispiel für die Ableitung von der WebBaseEvent Klasse finden Sie im beispiel in diesem Thema.
Konstruktoren
| Name | Beschreibung |
|---|---|
| WebAuthenticationSuccessAuditEvent(String, Object, Int32, Int32, String) |
Initialisiert die Klasse mithilfe der WebSuccessAuditEvent angegebenen Parameter. |
| WebAuthenticationSuccessAuditEvent(String, Object, Int32, String) |
Initialisiert die Klasse mithilfe der WebAuthenticationSuccessAuditEvent angegebenen Parameter. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| EventCode |
Ruft den Codewert ab, der dem Ereignis zugeordnet ist. (Geerbt von WebBaseEvent) |
| EventDetailCode |
Ruft den Ereignisdetailscode ab. (Geerbt von WebBaseEvent) |
| EventID |
Ruft den Bezeichner ab, der dem Ereignis zugeordnet ist. (Geerbt von WebBaseEvent) |
| EventOccurrence |
Ruft einen Zähler ab, der die Anzahl der Vorkommen des Ereignisses darstellt. (Geerbt von WebBaseEvent) |
| EventSequence |
Ruft ab, wie oft das Ereignis von der Anwendung ausgelöst wurde. (Geerbt von WebBaseEvent) |
| EventSource |
Ruft das Objekt ab, das das Ereignis auslöst. (Geerbt von WebBaseEvent) |
| EventTime |
Ruft die Zeit ab, zu der das Ereignis ausgelöst wurde. (Geerbt von WebBaseEvent) |
| EventTimeUtc |
Ruft die Zeit ab, zu der das Ereignis ausgelöst wurde. (Geerbt von WebBaseEvent) |
| Message |
Ruft die Nachricht ab, die das Ereignis beschreibt. (Geerbt von WebBaseEvent) |
| NameToAuthenticate |
Ruft den Namen des authentifizierten Benutzers ab. |
| ProcessInformation |
Ruft Informationen zum ASP.NET Anwendungshostingprozesses ab. (Geerbt von WebManagementEvent) |
| RequestInformation |
Rufen Sie die Informationen ab, die der Webanforderung zugeordnet sind. (Geerbt von WebAuditEvent) |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
| FormatCustomEventDetails(WebEventFormatter) |
Stellt die Standardformatierung der Ereignisinformationen bereit. (Geerbt von WebBaseEvent) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| IncrementPerfCounters() |
Erhöht den Leistungsindikator "Überwachungserfolge ausgelöst". (Geerbt von WebSuccessAuditEvent) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| Raise() |
Löst ein Ereignis aus, indem alle konfigurierten Anbieter benachrichtigt werden, dass das Ereignis aufgetreten ist. (Geerbt von WebBaseEvent) |
| ToString() |
Formatiert Ereignisinformationen für Anzeigezwecke. (Geerbt von WebBaseEvent) |
| ToString(Boolean, Boolean) |
Formatiert Ereignisinformationen für Anzeigezwecke. (Geerbt von WebBaseEvent) |