DefaultAuthenticationEventHandler Delegat
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt die Methode dar, die das DefaultAuthentication_OnAuthenticate Ereignis eines .DefaultAuthenticationModule
public delegate void DefaultAuthenticationEventHandler(System::Object ^ sender, DefaultAuthenticationEventArgs ^ e);
public delegate void DefaultAuthenticationEventHandler(object sender, DefaultAuthenticationEventArgs e);
type DefaultAuthenticationEventHandler = delegate of obj * DefaultAuthenticationEventArgs -> unit
Public Delegate Sub DefaultAuthenticationEventHandler(sender As Object, e As DefaultAuthenticationEventArgs)
Parameter
- sender
- Object
Die Quelle des Ereignisses.
Ein DefaultAuthenticationEventArgs Objekt, das die Ereignisdaten enthält.
Beispiele
Im folgenden Codebeispiel wird das DefaultAuthentication_OnAuthenticate-Ereignis verwendet, um zu testen, ob die User Eigenschaft des aktuellen HttpContext Objekts ist null. Wenn die Eigenschaft lautetnull, legt das Beispiel die User Eigenschaft des aktuellen HttpContext Objekts auf ein GenericPrincipal Objekt fest, wobei das GenericPrincipalIdentity Objekt ein GenericIdentity Wert Name von "default" ist.
Hinweis
Das DefaultAuthentication_OnAuthenticate-Ereignis wird vor dem AuthorizeRequest Ereignis ausgelöst. Wenn Sie die User Eigenschaft des aktuellen HttpContext Objekts auf eine benutzerdefinierte Identität festlegen, kann dies sich auf das Verhalten Ihrer Anwendung auswirken. Wenn Sie beispielsweise die FormsAuthentication Klasse verwenden und sicherstellen, dass nur authentifizierte Benutzer Zugriff auf Ihre Website haben, indem Sie den authorization Abschnitt verwenden und angeben <deny users="?" />, wird dieses Beispiel dazu führen, dass das deny Element ignoriert wird, da der Benutzer einen Namen hat, der "Standard" lautet. Stattdessen geben <deny users="default" /> Sie an, 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
Der Delegat DefaultAuthenticationEventHandler wird für das Authenticate Ereignis der DefaultAuthenticationModule Klasse definiert. Sie können auf das Authenticate Ereignis der DefaultAuthenticationModule Klasse zugreifen, indem Sie eine Unterroutine namens DefaultAuthentication_OnAuthenticate in der Datei "Global.asax" für Ihre ASP.NET-Anwendung angeben. Das Authenticate Ereignis wird nach dem AuthenticateRequest Ereignis ausgelöst und verwendet, um sicherzustellen, dass die User Eigenschaft des aktuellen HttpContext Objekts mit einem IPrincipal Objekt aufgefüllt wird.
Mit der Context Eigenschaft des Objekts, das DefaultAuthenticationEventArgs dem DefaultAuthentication_OnAuthenticate-Ereignis bereitgestellt wird, können Sie die User Eigenschaft des aktuellen HttpContext Objekts auf ein benutzerdefiniertes IPrincipal Objekt festlegen. Wenn Sie keinen Wert für die User Eigenschaft des HttpContext bereitgestellten DefaultAuthentication_OnAuthenticate-Ereignisses angeben, legt die DefaultAuthenticationModuleUser Eigenschaft des HttpContextGenericPrincipal Objekts fest, das keine Benutzerinformationen enthält.
Das DefaultAuthentication_OnAuthenticate-Ereignis wird nach dem AuthenticateRequest Ereignis und vor dem AuthorizeRequest Ereignis ausgelöst. Wenn Sie über einen authorization Abschnitt verfügen, der vom Benutzernamen abhängt, um den Zugriff auf Ihre Anwendung zu verweigern oder zuzulassen, kann das Ändern der User Eigenschaft der aktuellen HttpContext Anwendung das Verhalten Ihrer Anwendung beeinflussen. Achten Sie darauf, dass der benutzername, den Sie während des DefaultAuthentication_OnAuthenticate-Ereignisses festgelegt haben, berücksichtigt wird, wenn Sie den authorization Abschnitt in Ihrer Konfiguration angeben.
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| GetMethodInfo(Delegate) |
Ruft ein Objekt ab, das die vom angegebenen Delegaten dargestellte Methode darstellt. |