Login.OnAuthenticate(AuthenticateEventArgs) Método
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í.
Provoca el evento Authenticate para autenticar al usuario.
protected:
virtual void OnAuthenticate(System::Web::UI::WebControls::AuthenticateEventArgs ^ e);
protected virtual void OnAuthenticate (System.Web.UI.WebControls.AuthenticateEventArgs e);
abstract member OnAuthenticate : System.Web.UI.WebControls.AuthenticateEventArgs -> unit
override this.OnAuthenticate : System.Web.UI.WebControls.AuthenticateEventArgs -> unit
Protected Overridable Sub OnAuthenticate (e As AuthenticateEventArgs)
Parámetros
Objeto AuthenticateEventArgs que contiene los datos del evento.
Ejemplos
En el ejemplo de código siguiente se usa el Authenticate evento para llamar al código de autenticación personalizado específico del sitio.
<%@ page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
// This custom login control overloads the OnAuthenticate method
// to call a site-specific authentication method.
class CustomLogin : Login
{
private bool SiteSpecificAuthenticationMethod(string UserName, string Password)
{
// Insert code that implements a site-specific custom
// authentication method here.
//
// This example implementation always returns false.
return false;
}
override protected void OnAuthenticate(AuthenticateEventArgs e)
{
bool Authenticated = false;
Authenticated = SiteSpecificAuthenticationMethod(UserName, Password);
e.Authenticated = Authenticated;
}
}
// Add the custom login control to the page.
void Page_Load(object sender, EventArgs e)
{
CustomLogin loginControl = new CustomLogin();
loginControl.ID = "loginControl";
Placeholder1.Controls.Add(loginControl);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:placeholder id="Placeholder1" runat="server"></asp:placeholder>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
' This custom login control overloads the OnAuthenticate method
' to call a site-specific authentication method.
Class CustomLogin
Inherits Login
Private Function SiteSpecificAuthenticationMethod(ByVal UserName As String, ByVal Password As String) As Boolean
' Insert code that implements a site-specific custom
' authentication method here.
'
' This example implementation always returns false.
Return False
End Function
Overloads Sub OnAuthenticate(ByVal e As AuthenticateEventArgs)
Dim Authenticated As Boolean
Authenticated = SiteSpecificAuthenticationMethod(UserName, Password)
e.Authenticated = Authenticated
End Sub
End Class
' Add the custom login control to the page.
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim loginControl As New CustomLogin
loginControl.ID = "loginControl"
PlaceHolder1.Controls.Add(loginControl)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:placeholder id="PlaceHolder1" runat="server"></asp:placeholder>
</form>
</body>
</html>
Comentarios
El método OnAuthenticate genera el evento Authenticate. Use el Authenticate evento para implementar un esquema de autenticación personalizado.
Cuando se genera un evento, se invoca el controlador de eventos a través de un delegado. Para obtener más información, consulte controlar y provocar eventos.
El método OnAuthenticate también permite que las clases derivadas controlen el evento sin adjuntar ningún delegado. Ésta es la técnica preferida para controlar el evento en una clase derivada.
Notas a los desarrolladores de herederos
Al reemplazar OnAuthenticate(AuthenticateEventArgs) en una clase derivada, asegúrese de llamar al método OnAuthenticate(AuthenticateEventArgs) de la clase base para que los delegados registrados reciban el evento.