WebFailureAuditEvent Třída

Definice

Poskytuje informace o chybách zabezpečení.

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
Dědičnost
Odvozené

Příklady

Následující příklad kódu ukazuje, jak odvodit z WebFailureAuditEvent třídy k vytvoření vlastní audit událostí.


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

Následující úryvek konfigurace ukazuje, jak povolit ASP.NET použít událost 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>

Poznámky

ASP.NET monitorování stavu umožňuje provozním a provozním pracovníkům spravovat nasazené webové aplikace. Obor System.Web.Management názvů obsahuje typy událostí stavu zodpovědné za balení dat stavu aplikace a typů zprostředkovatelů zodpovědných za zpracování těchto dat. Obsahuje také podpůrné typy, které pomáhají při správě událostí stavu.

Třída WebFailureAuditEvent se používá v případě selhání operace zabezpečení. Příkladem je neúspěšná autorizace adresy URL pro webový požadavek.

Ve výchozím nastavení je ASP.NET nakonfigurována tak, aby vyvolala událost WebFailureAuditEvent pro následující funkce:

Když dojde k vyvolání události WebFailureAuditEvent, monitorování stavu ASP.NET zvýší související čítač výkonu vyvolaných událostí selhání auditu a pak zkontroluje oddíl konfigurace healthMonitoring a určí, jestli se zprostředkovatelé přihlásí k odběru události. Pokud se poskytovatelé přihlásí k odběru události, ASP.NET událost odešle ke zpracování.

Note

Zobrazení čítače selhání auditu vyvolaných událostmi výkonu v nástroji Sledování systému (PerfMon) v okně Přidat čítače, V rozevíracím seznamu >Výkonek výkonu vyberte ASP.NETVyvolaných událostí selháníAudit čítač výkonu. a klikněte na tlačítko Přidat.

Note

Ve většině případů budete moct používat typy monitorování stavu ASP.NET, které jsou implementované, a systém monitorování stavu budete řídit zadáním hodnot v části konfigurace healthMonitoring. Můžete také odvodit z typů monitorování stavu a vytvořit vlastní události a zprostředkovatele. Příklad odvození z WebFailureAuditEvent třídy naleznete v části Příklad.

Poznámky pro dědice

Při formátování informací o vlastní události pro zobrazení přepište metodu FormatCustomEventDetails(WebEventFormatter)ToString místo metody. Tím se zabrání přepsání nebo manipulaci s citlivými informacemi o systému.

Konstruktory

Name Description
WebFailureAuditEvent(String, Object, Int32, Int32)

Inicializuje novou instanci WebFailureAuditEvent třídy pomocí zadaných parametrů.

WebFailureAuditEvent(String, Object, Int32)

Inicializuje novou instanci WebFailureAuditEvent třídy pomocí zadaných parametrů.

Vlastnosti

Name Description
EventCode

Získá hodnotu kódu přidruženou k události.

(Zděděno od WebBaseEvent)
EventDetailCode

Získá kód podrobností události.

(Zděděno od WebBaseEvent)
EventID

Získá identifikátor přidružený k události.

(Zděděno od WebBaseEvent)
EventOccurrence

Získá čítač, který představuje počet výskytů události.

(Zděděno od WebBaseEvent)
EventSequence

Získá počet vyvolání události aplikací.

(Zděděno od WebBaseEvent)
EventSource

Získá objekt, který vyvolá událost.

(Zděděno od WebBaseEvent)
EventTime

Získá čas, kdy byla událost vyvolána.

(Zděděno od WebBaseEvent)
EventTimeUtc

Získá čas, kdy byla událost vyvolána.

(Zděděno od WebBaseEvent)
Message

Získá zprávu, která popisuje událost.

(Zděděno od WebBaseEvent)
ProcessInformation

Získá informace o ASP.NET procesu hostování aplikací.

(Zděděno od WebManagementEvent)
RequestInformation

Získejte informace přidružené k webové žádosti.

(Zděděno od WebAuditEvent)

Metody

Name Description
Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
FormatCustomEventDetails(WebEventFormatter)

Poskytuje standardní formátování informací o události.

(Zděděno od WebBaseEvent)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
IncrementPerfCounters()

Zvýší čítač výkonu událostí selhání auditu.

MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
Raise()

Vyvolá událost oznámením libovolného nakonfigurovaného zprostředkovatele, že došlo k události.

(Zděděno od WebBaseEvent)
ToString()

Formátuje informace o událostech pro účely zobrazení.

(Zděděno od WebBaseEvent)
ToString(Boolean, Boolean)

Formátuje informace o událostech pro účely zobrazení.

(Zděděno od WebBaseEvent)

Platí pro

Viz také