WebAuthenticationSuccessAuditEvent Classe

Définition

Fournit des informations sur les événements d'authentification réussis.

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

Exemples

Cet exemple de code comporte deux parties : un extrait de fichier de configuration, suivi d’un code qui montre comment personnaliser l’événement WebAuthenticationSuccessAuditEvent .

Voici un extrait des sections et eventMappings du fichier de provider configuration. Elles sont déjà définies par défaut. La seule chose que vous devez faire est de fournir la configuration de l’élément rules dans la healthMonitoring section .

<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>  

Le code suivant montre comment personnaliser l’événement WebAuthenticationSuccessAuditEvent .


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

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 liste suivante décrit les fonctionnalités pour lesquelles ASP.NET déclenche des événements de type WebAuthenticationSuccessAuditEvent.

Notes

Par défaut, ASP.NET est configuré pour journaliser uniquement les conditions d’échec de l’audit, car les conditions de réussite de la journalisation peuvent considérablement mettre à rude épreuve les ressources système. Vous pouvez toujours configurer le système pour journaliser les conditions de réussite.

  • Authentification par formulaire. Les conditions de réussite sont auditées. Les audits de réussite incluent le nom d’utilisateur qui a été authentifié. Au lieu de cela, les audits d’échec n’incluent pas le nom d’utilisateur, car ils résultent généralement d’un ticket qui a échoué au déchiffrement ou à la validation. Les deux contiennent l’adresse IP du client. Le code d’audit d’événement associé est AuditFormsAuthenticationSuccess.

  • Adhésion. Les conditions de réussite sont auditées. Les audits de réussite et d’échec contiennent le nom d’utilisateur qui a été tenté. Aucune forme d’audit ne contiendra le mot de passe tenté, car cela risquerait de conserver un mot de passe valide dans le journal. Le code d’audit d’événement associé est AuditMembershipAuthenticationSuccess.

Lorsqu’un WebAuthenticationSuccessAuditEvent est déclenché, par défaut, il met à jour le compteur de performances Événements d’authentification réussis déclenchés. Pour afficher ce compteur de performances 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’authentification déclenchés, puis cliquez sur le bouton Ajouter . Pour plus d’informations, consultez Utilisation du Moniteur système (PerfMon) avec ASP.NET Applications.

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 WebBaseEvent classe , consultez l’exemple fourni dans cette rubrique.

Constructeurs

WebAuthenticationSuccessAuditEvent(String, Object, Int32, Int32, String)

Initialise la classe WebSuccessAuditEvent en utilisant les paramètres fournis.

WebAuthenticationSuccessAuditEvent(String, Object, Int32, String)

Initialise la classe WebAuthenticationSuccessAuditEvent en utilisant les paramètres fournis.

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)
NameToAuthenticate

Obtient le nom de l'utilisateur authentifié.

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 de succès d'audit déclenchés.

(Hérité de WebSuccessAuditEvent)
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