Compartir a través de


FormsAuthenticationModule.Authenticate Evento

Definición

Tiene lugar cuando la aplicación autentica la solicitud actual.

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 

Tipo de evento

Ejemplos

En el ejemplo de código siguiente se usa el evento FormsAuthentication_OnAuthenticate para establecer la User propiedad del objeto actual HttpContext en un GenericPrincipal objeto que tiene un personalizado 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

Comentarios

El Authenticate evento se genera durante el AuthenticateRequest evento .

Puede controlar el Authenticate evento de la FormsAuthenticationModule clase especificando una subrutina denominada FormsAuthentication_OnAuthenticate en el archivo Global.asax de la aplicación ASP.NET.

Puede usar la FormsAuthenticationEventArgsUser propiedad proporcionada al evento FormsAuthentication_OnAuthenticate para establecer la User propiedad del actual HttpContext en un objeto personalizado IPrincipal . Si no especifica un valor para la User propiedad durante el evento de FormsAuthentication_OnAuthenticate , se usa la identidad proporcionada por el vale de autenticación de formularios en la cookie o la dirección URL.

El evento FormsAuthentication_OnAuthenticate solo se genera cuando el modo de autenticación se establece Forms en en el elemento authentication Element (ASP.NET Settings Schema) del archivo de configuración de la aplicación y FormsAuthenticationModule es un módulo HTTP activo para la aplicación.

Se aplica a

Consulte también