Partager via


FormsAuthenticationEventHandler Délégué

Définition

Représente la méthode qui gère l’événement FormsAuthentication_OnAuthenticate d’un 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)

Paramètres

sender
Object

Source de l'événement.

e
FormsAuthenticationEventArgs

FormsAuthenticationEventArgs qui contient les données d’événement.

Exemples

L’exemple de code suivant utilise l’événement FormsAuthentication_OnAuthenticate pour définir la User propriété du actif HttpContext sur un GenericPrincipal objet avec un personnalisé 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

Remarques

Le FormsAuthenticationEventHandler délégué est défini pour l’événement Authenticate de la FormsAuthenticationModule classe . Vous pouvez accéder à l’événement Authenticate de la FormsAuthenticationModule classe en spécifiant une sous-routine nommée FormsAuthentication_OnAuthenticate dans le fichier Global.asax de votre application ASP.NET. L’événement Authenticate est déclenché pendant l’événement AuthenticateRequest .

Construit FormsAuthenticationModule un FormsAuthenticationEventArgs objet à l’aide du actif HttpContext et le transmet à l’événement FormsAuthentication_OnAuthenticate .

Vous pouvez utiliser la User propriété de l’objet FormsAuthenticationEventArgs fourni à l’événement FormsAuthentication_OnAuthenticate pour définir la User propriété du actif HttpContext sur un objet personnalisé IPrincipal . Si vous ne spécifiez pas de valeur pour la User propriété pendant l’événement FormsAuthentication_OnAuthenticate , l’identité fournie par le ticket d’authentification par formulaire dans le cookie ou l’URL est utilisée.

L’événement FormsAuthentication_OnAuthenticate est déclenché uniquement lorsque l’authentification Mode est définie Forms sur et que le FormsAuthenticationModule est un module HTTP actif pour l’application.

Méthodes d’extension

GetMethodInfo(Delegate)

Obtient un objet qui représente la méthode représentée par le délégué spécifié.

S’applique à

Voir aussi