WebFailureAuditEvent Klass
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Innehåller information om säkerhetsfel.
public ref class WebFailureAuditEvent : System::Web::Management::WebAuditEvent
public class WebFailureAuditEvent : System.Web.Management.WebAuditEvent
type WebFailureAuditEvent = class
inherit WebAuditEvent
Public Class WebFailureAuditEvent
Inherits WebAuditEvent
- Arv
- Härledda
Exempel
Följande kodexempel visar hur du härleder från WebFailureAuditEvent klassen för att skapa en anpassad granskningshändelse.
using System;
using System.Text;
using System.Web;
using System.Web.Management;
namespace SamplesAspNet
{
// Implements a custom WebFailureAuditEvent class.
public class SampleWebFailureAuditEvent :
System.Web.Management.WebFailureAuditEvent
{
private string customCreatedMsg, customRaisedMsg;
// Invoked in case of events identified only by their event code.
public SampleWebFailureAuditEvent(string msg, object eventSource,
int eventCode):
base(msg, eventSource, eventCode)
{
// 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 SampleWebFailureAuditEvent(string msg, object eventSource,
int eventCode, int detailedCode):
base(msg, eventSource, eventCode, detailedCode)
{
// Perform custom initialization.
customCreatedMsg =
string.Format("Event created at: {0}",
DateTime.Now.TimeOfDay.ToString());
}
// Raises the SampleWebFailureAuditEvent.
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(
"******** SampleWebFailureAuditEvent 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(
"******** SampleWebFailureAuditEvent End ********");
formatter.IndentationLevel -= 1;
}
}
}
Imports System.Text
Imports System.Web
Imports System.Web.Management
' Implements a custom WebFailureAuditEvent class.
Public Class SampleWebFailureAuditEvent
Inherits System.Web.Management.WebFailureAuditEvent
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)
MyBase.New(msg, eventSource, eventCode)
' 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)
MyBase.New(msg, eventSource, eventCode, detailedCode)
' Perform custom initialization.
customCreatedMsg = String.Format("Event created at: {0}", _
DateTime.Now.TimeOfDay.ToString())
End Sub
' Raises the SampleWebFailureAuditEvent.
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("******** SampleWebFailureAuditEvent 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("******** SampleWebFailureAuditEvent End ********")
formatter.IndentationLevel -= 1
End Sub
End Class
Följande konfigurationsutdrag visar hur du aktiverar ASP.NET för att använda händelsen WebFailureAuditEvent.
<healthMonitoring
enabled="true"
heartBeatInterval="0">
<providers>
<add name="EventLogProvider"
type="System.Web.Management.EventLogWebEventProvider,
System.Web,Version=2.0.3600.0,Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"/>
</providers>
<eventMappings>
<add name="SampleWebFailureAuditEvent"
type="SamplesAspNet.SampleWebFailureAuditEvent,
webfailureauditevent,Version=1.0.1663.31140,
Culture=neutral,
PublicKeyToken=0d1fa0f69d94de96,
processorArchitecture=MSIL"/>
</eventMappings>
<rules>
<add name="Custom Failure Audit Default"
eventName=" SampleWebFailureAuditEvent "
provider="EventLogProvider"
profile="Default"/>
</rules>
</healthMonitoring>
Kommentarer
ASP.NET hälsoövervakning gör det möjligt för produktions- och driftpersonal att hantera distribuerade webbprogram. Namnområdet System.Web.Management innehåller de hälsohändelsetyper som ansvarar för att paketera programhälsostatusdata och de leverantörstyper som ansvarar för bearbetningen av dessa data. Den innehåller också stödtyper som hjälper till vid hantering av hälsohändelser.
Klassen WebFailureAuditEvent används när en säkerhetsåtgärd misslyckas. Ett exempel på detta är en misslyckad URL-auktorisering för en webbbegäran.
Som standard är ASP.NET konfigurerad för att skapa händelsen WebFailureAuditEvent för följande funktioner:
Filauktorisering. ASP.NET försöker endast auktorisering av filer när en Windows identitet är associerad med begäran. Den relaterade händelsegranskningskoden är AuditFileAuthorizationFailure.
URL-auktorisering. Detta styr obehöriga försök att komma åt en URL-resurs. Misslyckade försök av en anonym användare granskas inte eftersom ett anonymt autentiseringsfel är acceptabelt i de flesta fall. Den relaterade händelsegranskningskoden är AuditUrlAuthorizationFailure.
Allmänna ohanterade eller säkerhetsrelaterade villkor. Följande är en lista över de händelsekoder som är relaterade till dessa villkor:
När en WebFailureAuditEvent-händelse utlöses ökar ASP.NET hälsoövervakning den relaterade prestandaräknaren för insamlade granskningsfel och kontrollerar sedan konfigurationsavsnittet healthMonitoring för att avgöra om några leverantörer prenumererar på händelsen. Om leverantörer prenumererar på händelsen skickar ASP.NET händelsen till dem för bearbetning.
Note
Om du vill visa prestandaräknaren Granska misslyckade händelser i systemövervakaren (PerfMon) i fönstret Lägg till räknare välj ASP.NET från listrutan Performance och välj listrutan Audit Failure Events Raised performance counter, och klicka på knappen Lägg till.
Note
I de flesta fall kommer du att kunna använda ASP.NET hälsoövervakningstyper som implementerats, och du kommer att kontrollera hälsoövervakningssystemet genom att ange värden i konfigurationsavsnittet healthMonitoring. Du kan också härleda från hälsoövervakningstyperna för att skapa egna anpassade händelser och leverantörer. Ett exempel på härledning från WebFailureAuditEvent klassen finns i avsnittet Exempel.
Anteckningar till arvingar
När du formaterar din anpassade händelseinformation för visning åsidosätter FormatCustomEventDetails(WebEventFormatter) du metoden i stället ToString för metoden. På så sätt undviker du att skriva över eller manipulera känslig systeminformation.
Konstruktorer
| Name | Description |
|---|---|
| WebFailureAuditEvent(String, Object, Int32, Int32) |
Initierar en ny instans av klassen med hjälp av WebFailureAuditEvent de angivna parametrarna. |
| WebFailureAuditEvent(String, Object, Int32) |
Initierar en ny instans av klassen med hjälp av WebFailureAuditEvent de angivna parametrarna. |
Egenskaper
| Name | Description |
|---|---|
| EventCode |
Hämtar det kodvärde som är associerat med händelsen. (Ärvd från WebBaseEvent) |
| EventDetailCode |
Hämtar händelseinformationskoden. (Ärvd från WebBaseEvent) |
| EventID |
Hämtar identifieraren som är associerad med händelsen. (Ärvd från WebBaseEvent) |
| EventOccurrence |
Hämtar en räknare som representerar antalet gånger händelsen har inträffat. (Ärvd från WebBaseEvent) |
| EventSequence |
Hämtar antalet gånger som händelsen har skapats av programmet. (Ärvd från WebBaseEvent) |
| EventSource |
Hämtar objektet som genererar händelsen. (Ärvd från WebBaseEvent) |
| EventTime |
Hämtar den tid då händelsen skapades. (Ärvd från WebBaseEvent) |
| EventTimeUtc |
Hämtar den tid då händelsen skapades. (Ärvd från WebBaseEvent) |
| Message |
Hämtar meddelandet som beskriver händelsen. (Ärvd från WebBaseEvent) |
| ProcessInformation |
Hämtar information om ASP.NET programvärdprocess. (Ärvd från WebManagementEvent) |
| RequestInformation |
Hämta den information som är associerad med webbbegäran. (Ärvd från WebAuditEvent) |
Metoder
| Name | Description |
|---|---|
| Equals(Object) |
Avgör om det angivna objektet är lika med det aktuella objektet. (Ärvd från Object) |
| FormatCustomEventDetails(WebEventFormatter) |
Tillhandahåller standardformatering av händelseinformationen. (Ärvd från WebBaseEvent) |
| GetHashCode() |
Fungerar som standard-hash-funktion. (Ärvd från Object) |
| GetType() |
Hämtar den aktuella instansen Type . (Ärvd från Object) |
| IncrementPerfCounters() |
Ökar prestandaräknaren Förhöjda prestanda för granskningsfel. |
| MemberwiseClone() |
Skapar en ytlig kopia av den aktuella Object. (Ärvd från Object) |
| Raise() |
Genererar en händelse genom att meddela alla konfigurerade leverantörer att händelsen har inträffat. (Ärvd från WebBaseEvent) |
| ToString() |
Formaterar händelseinformation i visningssyfte. (Ärvd från WebBaseEvent) |
| ToString(Boolean, Boolean) |
Formaterar händelseinformation i visningssyfte. (Ärvd från WebBaseEvent) |