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 d’état d’intégrité de l’application et des types de fournisseurs responsables du traitement de ces données. Il contient également des types de prise en charge qui aident pendant la gestion des événements d’intégrité.

La WebFailureAuditEvent classe est utilisée lorsqu’une opération de sécurité échoue. Par exemple, il s’agit d’une autorisation d’URL ayant é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 événement WebFailureAuditEvent est déclenché, ASP.NET analyse de l’intégrité incrémente le compteur de performances déclenché des événements d’échec d’audit associés, puis vérifie la section de configuration healthMonitoring pour déterminer si les fournisseurs s’abonnent à l’événement. Si les fournisseurs s’abonnent à l’événement, ASP.NET distribue l’événement pour traitement.

Note

Pour afficher le compteur de performances Déclenché des événements d’échec d’audit dans l’Analyseur système (PerfMon), dans la fenêtre Add Counters, sélectionnez ASP.NET dans l’objet Performance liste déroulante, sélectionnez la liste déroulante Événements d’échec , puis cliquez sur le bouton Add.

Note

Dans la plupart des cas, vous serez en mesure d’utiliser les types de surveillance d’intégrité ASP.NET comme implémentés, et vous allez contrôler le système de surveillance de l’intégrité en spécifiant des valeurs dans la section de configuration healthMonitoring. Vous pouvez également dériver des types de supervision d’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

Lors de la mise en forme de vos informations d’événement personnalisées pour l’affichage, remplacez la FormatCustomEventDetails(WebEventFormatter) méthode plutôt que la ToString méthode. Cela évite de remplacer ou de falsifier les informations système sensibles.

Constructeurs

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

Initialise une nouvelle instance de la classe à l’aide WebFailureAuditEvent des paramètres fournis.

WebFailureAuditEvent(String, Object, Int32)

Initialise une nouvelle instance de la classe à l’aide WebFailureAuditEvent des paramètres fournis.

Propriétés

Nom Description
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 s’est produit.

(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’applications ASP.NET.

(Hérité de WebManagementEvent)
RequestInformation

Obtenez les informations associées à la requête Web.

(Hérité de WebAuditEvent)

Méthodes

Nom Description
Equals(Object)

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

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

Fournit une mise en forme standard des informations d’événement.

(Hérité de WebBaseEvent)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
IncrementPerfCounters()

Incrémente le compteur de performances déclenché par les événements d’échec d’audit.

MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
Raise()

Déclenche un événement en informant tout fournisseur configuré que l’événement s’est produit.

(Hérité de WebBaseEvent)
ToString()

Met en forme les informations d’événement à des fins d’affichage.

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

Met en forme les informations d’événement à des fins d’affichage.

(Hérité de WebBaseEvent)

S’applique à

Voir aussi