FormsAuthenticationModule.Authenticate Zdarzenie
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Występuje, gdy aplikacja uwierzytelnia bieżące żądanie.
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
Typ zdarzenia
Przykłady
W poniższym przykładzie kodu użyto zdarzenia FormsAuthentication_OnAuthenticate w celu ustawienia User właściwości bieżącej HttpContext na GenericPrincipal obiekt, który ma niestandardowy Identityelement .
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
Uwagi
Zdarzenie Authenticate jest zgłaszane podczas AuthenticateRequest zdarzenia.
Zdarzenie klasy można obsłużyć AuthenticateFormsAuthenticationModule , określając podprocedutynę o nazwie FormsAuthentication_OnAuthenticate w pliku Global.asax dla aplikacji ASP.NET.
Możesz użyć właściwości dostarczonej FormsAuthenticationEventArgsUser do zdarzenia FormsAuthentication_OnAuthenticate , aby ustawić User właściwość bieżącego HttpContext obiektu na obiekt niestandardowy IPrincipal . Jeśli nie określisz wartości właściwości User podczas zdarzenia FormsAuthentication_OnAuthenticate , zostanie użyta tożsamość dostarczona przez bilet uwierzytelniania formularzy w pliku cookie lub adresie URL.
Zdarzenie FormsAuthentication_OnAuthenticate jest zgłaszane tylko wtedy, gdy tryb uwierzytelniania jest ustawiony Forms na wartość w elemecie element uwierzytelniania (ASP.NET Ustawienia Schemat) pliku konfiguracji aplikacji, a FormsAuthenticationModule element jest aktywnym modułem HTTP dla aplikacji.