FormsAuthenticationModule.Authenticate Ereignis
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.
Tritt ein, wenn die Anwendung die aktuelle Anforderung authentifiziert.
public:
event System::Web::Security::FormsAuthenticationEventHandler ^ Authenticate;
public event System.Web.Security.FormsAuthenticationEventHandler Authenticate;
member this.Authenticate : System.Web.Security.FormsAuthenticationEventHandler
Public Custom Event Authenticate As FormsAuthenticationEventHandler
Ereignistyp
Beispiele
Im folgenden Codebeispiel wird das FormsAuthentication_OnAuthenticate-Ereignis verwendet, um die User -Eigenschaft des aktuellen HttpContext auf ein GenericPrincipal -Objekt festzulegen, das über eine benutzerdefinierte Identityverfügt.
public void FormsAuthentication_OnAuthenticate(object sender, FormsAuthenticationEventArgs args)
{
if (FormsAuthentication.CookiesSupported)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
try
{
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(
Request.Cookies[FormsAuthentication.FormsCookieName].Value);
args.User = new System.Security.Principal.GenericPrincipal(
new Samples.AspNet.Security.MyFormsIdentity(ticket),
new string[0]);
}
catch (Exception e)
{
// Decrypt method failed.
}
}
}
else
{
throw new HttpException("Cookieless Forms Authentication is not " +
"supported for this application.");
}
}
Public Sub FormsAuthentication_OnAuthenticate(sender As Object, _
args As FormsAuthenticationEventArgs)
If FormsAuthentication.CookiesSupported Then
If Not Request.Cookies(FormsAuthentication.FormsCookieName) Is Nothing Then
Try
Dim ticket As FormsAuthenticationTicket = FormsAuthentication.Decrypt( _
Request.Cookies(FormsAuthentication.FormsCookieName).Value)
args.User = New System.Security.Principal.GenericPrincipal( _
New Samples.AspNet.Security.MyFormsIdentity(ticket), _
New String(0) {})
Catch e As HttpException
' Decrypt method failed.
End Try
End If
Else
Throw New Exception("Cookieless Forms Authentication is not " & _
"supported for this application.")
End If
End Sub
Hinweise
Das Authenticate Ereignis wird während des Ereignisses AuthenticateRequest ausgelöst.
Sie können das Authenticate Ereignis der FormsAuthenticationModule -Klasse behandeln, indem Sie eine Unterroutine namens FormsAuthentication_OnAuthenticate in der Datei Global.asax für Ihre ASP.NET-Anwendung angeben.
Sie können die FormsAuthenticationEventArgsUser -Eigenschaft verwenden, die für das FormsAuthentication_OnAuthenticate-Ereignis bereitgestellt wird, um die User -Eigenschaft des aktuellen HttpContext auf ein benutzerdefiniertes IPrincipal -Objekt festzulegen. Wenn Sie während des FormsAuthentication_OnAuthenticate-Ereignisses keinen Wert für die User Eigenschaft angeben, wird die Identität verwendet, die vom Formularauthentifizierungsticket im Cookie oder der URL angegeben wird.
Das FormsAuthentication_OnAuthenticate-Ereignis wird nur ausgelöst, wenn der Authentifizierungsmodus im Authentifizierungselement (ASP.NET Einstellungsschema) der Konfigurationsdatei der Anwendung auf festgelegt Forms ist und das FormsAuthenticationModule ein aktives HTTP-Modul für die Anwendung ist.