Freigeben über


WindowsAuthenticationEventHandler-Delegat

Stellt die Methode dar, die das WindowsAuthentication_OnAuthenticate-Ereignis eines WindowsAuthenticationModule behandelt.

Namespace: System.Web.Security
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Delegate Sub WindowsAuthenticationEventHandler ( _
    sender As Object, _
    e As WindowsAuthenticationEventArgs _
)
'Usage
Dim instance As New WindowsAuthenticationEventHandler(AddressOf HandlerMethod)
public delegate void WindowsAuthenticationEventHandler (
    Object sender,
    WindowsAuthenticationEventArgs e
)
public delegate void WindowsAuthenticationEventHandler (
    Object^ sender, 
    WindowsAuthenticationEventArgs^ e
)
/** @delegate */
public delegate void WindowsAuthenticationEventHandler (
    Object sender, 
    WindowsAuthenticationEventArgs e
)
JScript unterstützt die Verwendung von Delegaten, aber nicht die Deklaration von neuen Delegaten.

Parameter

  • sender
    Die Quelle des Ereignisses.

Hinweise

Der WindowsAuthenticationEventHandler-Delegat wird für das Authenticate-Ereignis der WindowsAuthenticationModule-Klasse definiert. Sie können auf das Authenticate-Ereignis der WindowsAuthenticationModule-Klasse zugreifen, indem Sie in der Datei Global.asax eine Unterroutine mit dem Namen WindowsAuthentication_OnAuthenticate für die ASP.NET-Anwendung angeben. Das Authenticate-Ereignis wird während des AuthenticateRequest-Ereignisses ausgelöst.

Das WindowsAuthenticationModule erstellt ein WindowsAuthenticationEventArgs-Objekt mit der von IIS (Internet Information Services, Internetinformationsdienste) und dem aktuellen HttpContext bereitgestellten Windows-Identität und übergibt es an das WindowsAuthentication_OnAuthenticate-Ereignis.

Sie können die User-Eigenschaft des für das WindowsAuthentication_OnAuthenticate-Ereignis bereitgestellten WindowsAuthenticationEventArgs-Objekts verwenden, um die User-Eigenschaft des aktuellen HttpContext für ein benutzerdefiniertes IPrincipal-Objekt festzulegen. Wenn Sie für die User-Eigenschaft während des WindowsAuthentication_OnAuthenticate-Ereignisses keinen Wert angeben, wird die von IIS bereitgestellte Windows-Identität als Identität für die aktuelle Anforderung verwendet. Wenn IIS die anonyme Authentifizierung verwendet, wird die Identity-Eigenschaft des WindowsAuthenticationEventArgs-Objekts auf die von der GetAnonymous-Methode zurückgegebene Identität festgelegt.

Das WindowsAuthentication_OnAuthenticate-Ereignis wird nur ausgelöst, wenn der Authentifizierungs-Mode auf Windows festgelegt wurde und das WindowsAuthenticationModule ein aktives HTTP-Modul für die Anwendung ist.

Beispiel

Im folgenden Codebeispiel wird die User-Eigenschaft des aktuellen HttpContext mit dem WindowsAuthentication_OnAuthenticate-Ereignis an ein benutzerdefiniertes IPrincipal-Objekt gebunden.

Public Sub WindowsAuthentication_OnAuthenticate(sender As Object, args As WindowsAuthenticationEventArgs)
  If Not args.Identity.IsAnonymous Then
    args.User = New Samples.AspNet.Security.MyPrincipal(args.Identity)
  End If
End Sub
public void WindowsAuthentication_OnAuthenticate(object sender, WindowsAuthenticationEventArgs args)
{
  if (!args.Identity.IsAnonymous)
  {
    args.User = new Samples.AspNet.Security.MyPrincipal(args.Identity);
  }
}

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

System.Web.Security-Namespace

Weitere Ressourcen

Windows-Authentifizierungsanbieter