FormsAuthenticationModule.Authenticate Evento
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.