Partager via


WebFailureAuditEvent Classe

Définition

Fournit des informations sur les défaillances de sécurité.

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
Héritage
Dérivé

Exemples

L’exemple de code suivant montre comment dériver de la WebFailureAuditEvent classe pour créer un événement d’audit personnalisé.


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

L’extrait de configuration suivant montre comment activer ASP.NET pour utiliser l’événement 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>

Remarques

ASP.NET surveillance de l’intégrité permet au personnel de production et d’exploitation de gérer les applications web déployées. L’espace System.Web.Management de noms contient les types d’événements d’intégrité responsables de l’empaquetage des données de status d’intégrité de l’application et les types de fournisseurs responsables du traitement de ces données. Il contient également des types de prise en charge qui facilitent la gestion des événements d’intégrité.

La WebFailureAuditEvent classe est utilisée lorsqu’une opération de sécurité échoue. Par exemple, l’autorisation d’URL a échoué pour une requête Web.

Par défaut, ASP.NET est configuré pour déclencher l’événement WebFailureAuditEvent pour les fonctionnalités suivantes :

Lorsqu’un WebFailureAuditEvent événement est déclenché, ASP.NET surveillance de l’intégrité incrémente le compteur de performances Événements d’échec d’audit déclenchés, puis vérifie la healthMonitoring section de configuration pour déterminer si des fournisseurs s’abonnent à l’événement. Si les fournisseurs s’abonnent à l’événement, ASP.NET leur distribue l’événement pour traitement.

Notes

Pour afficher le compteur de performances Événements d’échec d’audit déclenchés dans le Moniteur système (PerfMon), dans la fenêtre Ajouter des compteurs , sélectionnez ASP.NET dans la liste déroulante Objet de performance , sélectionnez le compteur de performances Événements d’échec d’audit déclenchés , puis cliquez sur le bouton Ajouter .

Notes

Dans la plupart des cas, vous serez en mesure d’utiliser les ASP.NET types de surveillance de l’intégrité tels qu’ils sont implémentés, et vous contrôlerez le système de surveillance de l’intégrité en spécifiant des valeurs dans la healthMonitoring section configuration. Vous pouvez également dériver des types de surveillance de l’intégrité pour créer vos propres événements et fournisseurs personnalisés. Pour obtenir un exemple de dérivation de la WebFailureAuditEvent classe , consultez la section Exemple.

Notes pour les héritiers

Lorsque vous mettez en forme vos informations d’événement personnalisées pour l’affichage, remplacez la FormatCustomEventDetails(WebEventFormatter) méthode par ToString la méthode . Cela évitera de remplacer ou de falsifier des informations système sensibles.

Constructeurs

WebFailureAuditEvent(String, Object, Int32, Int32)

Initialise une nouvelle instance de la classe WebFailureAuditEvent avec les paramètres spécifiés.

WebFailureAuditEvent(String, Object, Int32)

Initialise une nouvelle instance de la classe WebFailureAuditEvent avec les paramètres spécifiés.

Propriétés

EventCode

Obtient la valeur de code associée à l'événement.

(Hérité de WebBaseEvent)
EventDetailCode

Obtient le code de détail de l'événement.

(Hérité de WebBaseEvent)
EventID

Obtient l’identificateur associé à l’événement.

(Hérité de WebBaseEvent)
EventOccurrence

Obtient un compteur qui représente le nombre de fois où l'événement a eu lieu.

(Hérité de WebBaseEvent)
EventSequence

Obtient le nombre de fois où l'événement a été déclenché par l'application.

(Hérité de WebBaseEvent)
EventSource

Obtient l'objet qui déclenche l'événement.

(Hérité de WebBaseEvent)
EventTime

Obtient l'heure à laquelle l'événement a été déclenché.

(Hérité de WebBaseEvent)
EventTimeUtc

Obtient l'heure à laquelle l'événement a été déclenché.

(Hérité de WebBaseEvent)
Message

Obtient le message qui décrit l'événement.

(Hérité de WebBaseEvent)
ProcessInformation

Obtient des informations sur le processus d'hébergement d'application ASP.NET.

(Hérité de WebManagementEvent)
RequestInformation

Obtient les informations associées à la demande Web.

(Hérité de WebAuditEvent)

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
FormatCustomEventDetails(WebEventFormatter)

Fournit la mise en forme standard des informations sur l'événement.

(Hérité de WebBaseEvent)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IncrementPerfCounters()

Incrémente le compteur de performance Événements d'échec d'audit déclenchés.

MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
Raise()

Déclenche un événement en notifiant à tout fournisseur configuré que l'événement s'est produit.

(Hérité de WebBaseEvent)
ToString()

Met en forme les informations sur l'événement à des fins d'affichage.

(Hérité de WebBaseEvent)
ToString(Boolean, Boolean)

Met en forme les informations sur l'événement à des fins d'affichage.

(Hérité de WebBaseEvent)

S’applique à

Voir aussi