Aracılığıyla paylaş


WebAuditEvent Sınıf

Tanım

Tüm ASP.NET sistem durumu izleme denetim olayları için temel sınıf görevi görür.

public ref class WebAuditEvent : System::Web::Management::WebManagementEvent
public class WebAuditEvent : System.Web.Management.WebManagementEvent
type WebAuditEvent = class
    inherit WebManagementEvent
Public Class WebAuditEvent
Inherits WebManagementEvent
Devralma
Türetilmiş

Örnekler

Aşağıdaki kod örneği, özel denetim olayı oluşturmak için sınıfından WebAuditEvent türetmeyi gösterir.


using System;
using System.Text;
using System.Web;
using System.Web.Management;

namespace SamplesAspNet
{
    // Implements a custom WebAuditEvent class. 
    public class SampleWebAuditEvent : System.Web.Management.WebAuditEvent
    {
        private string customCreatedMsg, customRaisedMsg;

        // Invoked in case of events identified only by their event code.
        public SampleWebAuditEvent(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 SampleWebAuditEvent(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 SampleWebAuditEvent.
        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()
        {
            // Obtain the Web request information.
            // No customization is allowed here.
            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(
                "******** SampleWebAuditEvent Information 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(
                "******** SampleWebAuditEvent Information End ********");

            formatter.IndentationLevel -= 1;
        }
    }
}
Imports System.Text
Imports System.Web
Imports System.Web.Management


' Implements a custom WebAuditEvent class. 

Public Class SampleWebAuditEvent
    Inherits System.Web.Management.WebAuditEvent
    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 SampleWebAuditEvent.
    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 
        ' Obtain the Web request information.
        ' No customization is allowed here.
        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("******** SampleWebAuditEvent Information 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("******** SampleWebAuditEvent Information End ********")
        
        formatter.IndentationLevel -= 1
    
    End Sub
End Class

Aşağıda, ASP.NET'nin olayı kullanmasını sağlayan yapılandırma dosyasının bir alıntısı yer alır.

<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="SampleWebAuditEvent"   
      type="SamplesAspNet.SampleWebAuditEvent,  
      webauditevent,Version=1.0.1663.31140,   
      Culture=neutral,   
      PublicKeyToken=0d1fa0f69d94de96,   
      processorArchitecture=MSIL"/>  
  </eventMappings>  

  <rules>  
    <add name="Custom Audit Default"  
      eventName="SampleWebAuditEvent"  
      provider="EventLogProvider"  
      profile="Default"/>    
  </rules>  

</healthMonitoring>  

Açıklamalar

ASP.NET sistem durumu izleme, üretim ve operasyon personelinin dağıtılan Web uygulamalarını yönetmesine olanak tanır. Ad alanı, System.Web.Management uygulama sistem durumu verilerini paketlemeden sorumlu sistem durumu olay türlerini ve bu verileri işlemeden sorumlu sağlayıcı türlerini içerir. Ayrıca, sistem durumu olaylarının yönetimi sırasında yardımcı olan destekleyici türler içerir.

WebAuditEvent sınıfı, ASP.NET sistem durumu izleme denetim olayı sınıflarının türetildiği temel sınıftır. Denetim olayları bir Web uygulamasındaki güvenlikle ilgili işlemler hakkında bilgi oluşturur ve denetlenen her işlem için hem başarı hem de başarısızlık olayı sağlar.

Sistem durumu izleme sistemi hem başarılı hem de başarısız olayları denetleyebileceği için bir uygulama hem normal hem de hatalı çalışan koşullar için izlenebilir. Varsayılan olarak, yalnızca hata denetimi olayları kaydedilir.

Aşağıdaki işlemler ASP.NET tarafından denetlenebilir ve başarı veya başarısızlık durumu izleme denetim olayları oluşturabilir:

  • bir ASP.NET uygulamasının kullanıcıları tarafından yapılan oturum açma girişimleri. Bu denetim hakkında daha fazla ayrıntı için bkz WebAuthenticationSuccessAuditEvent . ve WebSuccessAuditEvent.

  • Kimlik doğrulama hataları, başarısız kaynak erişim girişimleri ve güvenlikle ilgili diğer olaylar gibi güvenlikle ilgili olaylar. Bu olayların günlüğü, uygulamaya yönelik bir yetkisiz erişim veya saldırıyı araştırırken yararlı olabilir. Varsayılan olarak, anonim kullanıcıların yetkilendirme hataları için denetim desteği sunulmaz. Hata olayı denetimleri hakkında daha fazla ayrıntı için bkz WebAuthenticationFailureAuditEvent . ve WebFailureAuditEvent.

  • bir ASP.NET uygulaması tarafından tetiklenen özel olaylar. Sınıf ve türetilmiş sınıflar tarafından WebAuditEvent sağlanan işlevselliği genişleterek özel olayları denetleyebilirsiniz

Not

Çoğu durumda, uygulanan ASP.NET sistem durumu izleme türlerini kullanabilir ve yapılandırma bölümünde değerleri healthMonitoring belirterek sistem durumu izleme sistemini denetleyebilirsiniz. Kendi özel olaylarınızı ve sağlayıcılarınızı oluşturmak için sistem durumu izleme türlerinden de türetebilirsiniz. sınıfından türetme WebAuditEvent örneği için bu konuda sağlanan örne bakın.

Devralanlara Notlar

Görüntü için özel olay bilgilerinizi biçimlendirirken, yöntemi yerine ToString yöntemini geçersiz kılınFormatCustomEventDetails(WebEventFormatter). Bu, hassas sistem bilgilerinin üzerine yazılmasını veya üzerinde oynanmasını önler.

Oluşturucular

WebAuditEvent(String, Object, Int32)

Sağlanan parametreleri kullanarak sınıfının yeni bir örneğini WebAuditEvent başlatır.

WebAuditEvent(String, Object, Int32, Int32)

Belirtilen olay parametreleriyle sınıfının yeni bir örneğini WebAuditEvent başlatır.

Özellikler

EventCode

Olayla ilişkili kod değerini alır.

(Devralındığı yer: WebBaseEvent)
EventDetailCode

Olay ayrıntı kodunu alır.

(Devralındığı yer: WebBaseEvent)
EventID

Olayla ilişkili tanımlayıcıyı alır.

(Devralındığı yer: WebBaseEvent)
EventOccurrence

Olayın kaç kez gerçekleştiğini gösteren bir sayaç alır.

(Devralındığı yer: WebBaseEvent)
EventSequence

Olayın uygulama tarafından kaç kez tetiklendiğini alır.

(Devralındığı yer: WebBaseEvent)
EventSource

Olayı oluşturan nesneyi alır.

(Devralındığı yer: WebBaseEvent)
EventTime

Olayın tetiklendiği zamanı alır.

(Devralındığı yer: WebBaseEvent)
EventTimeUtc

Olayın tetiklendiği zamanı alır.

(Devralındığı yer: WebBaseEvent)
Message

Olayı açıklayan iletiyi alır.

(Devralındığı yer: WebBaseEvent)
ProcessInformation

ASP.NET uygulama barındırma işlemi hakkında bilgi alır.

(Devralındığı yer: WebManagementEvent)
RequestInformation

Web isteğiyle ilişkili bilgileri alın.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
FormatCustomEventDetails(WebEventFormatter)

Olay bilgilerinin standart biçimlendirmesini sağlar.

(Devralındığı yer: WebBaseEvent)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IncrementPerfCounters()

Performans sayaçlarını artırmak için dahili olarak kullanılır.

(Devralındığı yer: WebBaseEvent)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Raise()

Yapılandırılmış sağlayıcılara olayın gerçekleştiğini bildirerek bir olayı tetikler.

(Devralındığı yer: WebBaseEvent)
ToString()

Olay bilgilerini görüntüleme amacıyla biçimlendirin.

(Devralındığı yer: WebBaseEvent)
ToString(Boolean, Boolean)

Olay bilgilerini görüntüleme amacıyla biçimlendirin.

(Devralındığı yer: WebBaseEvent)

Şunlara uygulanır

Ayrıca bkz.