Freigeben über


DefaultAuthenticationModule Klasse

Definition

Stellt sicher, dass ein Authentifizierungsobjekt im Kontext vorhanden ist. Diese Klasse kann nicht vererbt werden.

public ref class DefaultAuthenticationModule sealed : System::Web::IHttpModule
public sealed class DefaultAuthenticationModule : System.Web.IHttpModule
type DefaultAuthenticationModule = class
    interface IHttpModule
Public NotInheritable Class DefaultAuthenticationModule
Implements IHttpModule
Vererbung
DefaultAuthenticationModule
Implementiert

Beispiele

Im folgenden Beispiel wird das DefaultAuthentication_OnAuthenticate-Ereignis verwendet, um zu testen, ob die User Eigenschaft der aktuellen HttpContext Instanz lautet null. Wenn die User Eigenschaft lautet null, legt das Beispiel die User Eigenschaft der aktuellen HttpContext Instanz auf ein GenericPrincipal Objekt fest, bei dem das IdentityGenericPrincipal Objekt ein GenericIdentity Wert Name von "default" ist.

Hinweis

Das DefaultAuthentication_OnAuthenticate-Ereignis wird vor dem AuthorizeRequest Ereignis ausgelöst. Wenn Sie daher die User Eigenschaft der aktuellen HttpContext Instanz auf eine benutzerdefinierte Identität festlegen, kann sie sich auf das Verhalten Ihrer Anwendung auswirken. Wenn Sie beispielsweise die FormsAuthentication Klasse verwenden und im Abschnitt für die Autorisierungskonfiguration angeben<deny users="?" />, um sicherzustellen, dass nur authentifizierte Benutzer Zugriff auf Ihre Website haben, führt dieses Beispiel dazu, dass das Verweigerungselement ignoriert wird, da der Benutzer einen Namen hat, der "Standard" lautet. Stattdessen würden Sie angeben<deny users="default" />, dass nur authentifizierte Benutzer auf Ihre Website zugreifen können.

public void DefaultAuthentication_OnAuthenticate(object sender,
                                                 DefaultAuthenticationEventArgs args)
{
  if (args.Context.User == null)
    args.Context.User = 
      new System.Security.Principal.GenericPrincipal(
        new System.Security.Principal.GenericIdentity("default"),
        new String[0]);
}
Public Sub DefaultAuthentication_OnAuthenticate(sender As Object, _
                                                args As DefaultAuthenticationEventArgs)
  If args.Context.User Is Nothing Then
    args.Context.User = _
      new System.Security.Principal.GenericPrincipal( _
        new System.Security.Principal.GenericIdentity("default"), _
        new String(0) {})
  End If
End Sub

Hinweise

Dadurch DefaultAuthenticationModule wird sichergestellt, dass die User Eigenschaft der aktuellen HttpContext Instanz für jede Anforderung auf ein IPrincipal Objekt festgelegt ist. Die DefaultAuthenticationModule Eigenschaft wird nach dem AuthenticateRequest Ereignis und vor dem AuthorizeRequest Ereignis untersuchtUser. Wenn die User Eigenschaft lautet null, wird die DefaultAuthenticationModuleUser Eigenschaft auf ein GenericPrincipal Objekt festgelegt, das keine Benutzerinformationen enthält.

Wenn das Authentifizierungsmodul die StatusCode Eigenschaft auf 401 festlegt, DefaultAuthenticationModule wird eine Fehlerseite mit Zugriffsverweigerung gerendert. Wenn der Wert der StatusCode Eigenschaft auf einen Wert festgelegt ist, der größer als 200 ist, beendet das DefaultAuthenticationModule Objekt die Anforderung. In diesem Fall werden nur HTTP-Module, die das EndRequest Ereignis abonnieren, vor abschluss der aktuellen Anforderung aufgerufen.

Dies DefaultAuthenticationModule macht ein Authenticate Ereignis verfügbar. Sie können dieses Ereignis verwenden, um ein benutzerdefiniertes IPrincipal Objekt für die User Eigenschaft der aktuellen HttpContext Instanz bereitzustellen. Auf das Authenticate Ereignis wird zugegriffen, indem in der Datei "Global.asax" der Anwendung ein Ereignis mit dem Namen DefaultAuthentication_OnAuthenticate angegeben wird.

Konstruktoren

Name Beschreibung
DefaultAuthenticationModule()

Initialisiert eine neue Instanz der DefaultAuthenticationModule-Klasse.

Methoden

Name Beschreibung
Dispose()

Gibt alle Ressourcen außer Arbeitsspeicher frei, die von der DefaultAuthenticationModule.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
Init(HttpApplication)

Initialisiert das DefaultAuthenticationModule-Objekt.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Ereignisse

Name Beschreibung
Authenticate

Tritt ein, nachdem die Anforderung authentifiziert wurde.

Gilt für:

Weitere Informationen