FormsAuthenticationEventHandler Delegato
In questo articolo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rappresenta il metodo che gestisce l'evento FormsAuthentication_OnAuthenticate di una classe FormsAuthenticationModule.
public delegate void FormsAuthenticationEventHandler(System::Object ^ sender, FormsAuthenticationEventArgs ^ e);
public delegate void FormsAuthenticationEventHandler(object sender, FormsAuthenticationEventArgs e);
type FormsAuthenticationEventHandler = delegate of obj * FormsAuthenticationEventArgs -> unit
Public Delegate Sub FormsAuthenticationEventHandler(sender As Object, e As FormsAuthenticationEventArgs)
Parametri
- sender
- Object
Origine dell'evento.
Oggetto FormsAuthenticationEventArgs che contiene i dati dell'evento.
Esempio
Nell'esempio di codice seguente viene utilizzato l'evento FormsAuthentication_OnAuthenticate per impostare la User proprietà dell'oggetto corrente HttpContext su un GenericPrincipal oggetto con un oggetto personalizzato Identity.
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
Commenti
Il FormsAuthenticationEventHandler delegato viene definito per l'evento Authenticate della FormsAuthenticationModule classe . È possibile accedere all'evento Authenticate della FormsAuthenticationModule classe specificando una subroutine denominata FormsAuthentication_OnAuthenticate nel file Global.asax per l'applicazione ASP.NET. L'evento Authenticate viene generato durante l'evento AuthenticateRequest .
Costruisce FormsAuthenticationModule un FormsAuthenticationEventArgs oggetto utilizzando l'oggetto corrente HttpContext e lo passa all'evento FormsAuthentication_OnAuthenticate .
È possibile utilizzare la User proprietà dell'oggetto fornito all'evento FormsAuthenticationEventArgsFormsAuthentication_OnAuthenticate per impostare la User proprietà dell'oggetto corrente HttpContext su un oggetto personalizzato IPrincipal . Se non si specifica un valore per la User proprietà durante l'evento FormsAuthentication_OnAuthenticate , viene utilizzata l'identità fornita dal ticket di autenticazione dei moduli nel cookie o nell'URL.
L'evento FormsAuthentication_OnAuthenticate viene generato solo quando l'autenticazione Mode è impostata su Forms e è FormsAuthenticationModule un modulo HTTP attivo per l'applicazione.
Metodi di estensione
Get |
Ottiene un oggetto che rappresenta il metodo rappresentato dal delegato specificato. |
Si applica a
Prodotto | Versioni |
---|---|
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |