WebAuthenticationSuccessAuditEvent Classe

Definizione

Fornisce informazioni relative agli eventi di autenticazione riusciti.

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

Esempio

Questo esempio di codice include due parti: un estratto di file di configurazione, seguito dal codice che mostra come personalizzare l'evento WebAuthenticationSuccessAuditEvent .

Di seguito è riportato un estratto delle sezioni e eventMappings dei file di provider configurazione. Sono già impostati per impostazione predefinita. L'unica cosa da fare consiste nel fornire la configurazione per l'elemento rules nella healthMonitoring sezione.

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

Il codice seguente illustra come personalizzare l'evento 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

Commenti

ASP.NET monitoraggio dell'integrità consente al personale di produzione e operazioni di gestire le applicazioni Web distribuite. Lo System.Web.Management spazio dei nomi contiene i tipi di evento di integrità responsabili della creazione di pacchetti di dati relativi allo stato dell'integrità dell'applicazione e i tipi di provider responsabili dell'elaborazione di questi dati. Contiene anche tipi di supporto che consentono durante la gestione degli eventi di integrità.

Nell'elenco seguente vengono descritte le funzionalità per cui ASP.NET genera eventi di tipo WebAuthenticationSuccessAuditEvent.

Nota

Per impostazione predefinita, ASP.NET è configurato solo per registrare le condizioni di errore di controllo, poiché le condizioni di esito positivo della registrazione possono filtrare gravemente le risorse del sistema. È sempre possibile configurare il sistema per registrare le condizioni di esito positivo.

  • Autenticazione dei moduli. Le condizioni di esito positivo vengono controllate. I controlli di esito positivo includono il nome utente autenticato. I controlli di errore non includono invece il nome utente, poiché in genere derivano da un ticket che non è riuscito a decrittografare o convalidare. Entrambi contengono l'indirizzo IP client. Il codice di controllo eventi correlato è AuditFormsAuthenticationSuccess.

  • Iscrizione. Le condizioni di esito positivo vengono controllate. Sia i controlli di esito positivo che i controlli di errore contengono il nome utente che è stato tentato. Nessuna forma di controllo conterrà la password che è stata tentata, perché rischierebbe di mantenere una password valida nel log. Il codice di controllo eventi correlato è AuditMembershipAuthenticationSuccess.

Quando viene generato un WebAuthenticationSuccessAuditEvent oggetto, per impostazione predefinita aggiorna il contatore delle prestazioni Generato eventi di autenticazione riuscita. Per visualizzare questo contatore delle prestazioni in Monitoraggio sistema (PerfMon), nella finestra Aggiungi contatori selezionare ASP.NET nell'elenco a discesa Oggetto Prestazioni selezionare il contatore Delle prestazioni riuscite autenticazione generato e fare clic sul pulsante Aggiungi . Per altre informazioni, vedere Uso del monitoraggio del sistema (PerfMon) con applicazioni ASP.NET.

Nota

Nella maggior parte dei casi sarà possibile usare i tipi di monitoraggio dell'integrità ASP.NET come implementato e si controlla il sistema di monitoraggio dell'integrità specificando i valori nella healthMonitoring sezione di configurazione. È anche possibile derivare dai tipi di monitoraggio dell'integrità per creare eventi e provider personalizzati. Per un esempio di derivazione dalla classe, vedere l'esempio WebBaseEvent fornito in questo argomento.

Costruttori

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

Inizializza la classe WebSuccessAuditEvent utilizzando i parametri specificati.

WebAuthenticationSuccessAuditEvent(String, Object, Int32, String)

Inizializza la classe WebAuthenticationSuccessAuditEvent utilizzando i parametri specificati.

Proprietà

EventCode

Ottiene il valore di codice associato all'evento.

(Ereditato da WebBaseEvent)
EventDetailCode

Ottiene il codice dettagliato dell'evento.

(Ereditato da WebBaseEvent)
EventID

Ottiene l'identificatore associato all'evento.

(Ereditato da WebBaseEvent)
EventOccurrence

Ottiene un contatore che rappresenta il numero di occorrenze dell'evento.

(Ereditato da WebBaseEvent)
EventSequence

Ottiene il numero di volte in cui l'evento è stato generato dall'applicazione.

(Ereditato da WebBaseEvent)
EventSource

Ottiene l'oggetto che genera l'evento.

(Ereditato da WebBaseEvent)
EventTime

Ottiene la data e l'ora in cui è stato generato l'evento.

(Ereditato da WebBaseEvent)
EventTimeUtc

Ottiene la data e l'ora in cui è stato generato l'evento.

(Ereditato da WebBaseEvent)
Message

Ottiene il messaggio nel quale è descritto l'evento.

(Ereditato da WebBaseEvent)
NameToAuthenticate

Ottiene il nome dell'utente autenticato.

ProcessInformation

Ottiene informazioni sul processo che ospita l'applicazione ASP.NET.

(Ereditato da WebManagementEvent)
RequestInformation

Ottiene le informazioni associate alla richiesta Web.

(Ereditato da WebAuditEvent)

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FormatCustomEventDetails(WebEventFormatter)

Fornisce una formattazione standard delle informazioni relative all'evento.

(Ereditato da WebBaseEvent)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
IncrementPerfCounters()

Incrementa il contatore delle prestazioni Eventi di controllo riusciti generati.

(Ereditato da WebSuccessAuditEvent)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
Raise()

Genera un evento notificando a qualsiasi provider configurato che l'evento si è verificato.

(Ereditato da WebBaseEvent)
ToString()

Formatta le informazioni relative all'evento ai fini della visualizzazione.

(Ereditato da WebBaseEvent)
ToString(Boolean, Boolean)

Formatta le informazioni relative all'evento ai fini della visualizzazione.

(Ereditato da WebBaseEvent)

Si applica a

Vedi anche