Tutorial ASP.NET: Crear una página de login, autenticación y seguridad
Vamos a ver como ASP.NET nos brinda controles de servidor complejos que nos facilitan la implementación de funcionalidades complejas en nuestras aplicaciones. Un buen ejemplo es el control de Login.
<asp:Login ID="Login1" runat="server"></asp:Login>
Antes de comenzar a ver cómo funciona y lo simple que es hacerlo funcional, vamos a ver las propiedades principales que ofrece para adaptarlo a nuestras necesidades.
<asp:Login ID="Login1" runat="server" LoginButtonText="Ingresar" PasswordLabelText="Contraseña:" RememberMeText="Recordarme la proxima vez." TitleText="" UserNameLabelText="Usuario:"> </asp:Login>
Propiedades que utilizamos son:
LoginButtonText
: Nos permite modificar el texto del botón.PasswordLabelText
: Texto de la solicitud de contraseña.UserNameLabelText
: Texto de la solicitud de nombre de usuario.RememberMeText
: Texto de recordatorio.
Ahora nuestro control nos queda de esta manera.
Ahora que ya pudimos cambiar el idioma usando las propiedades que nos ofrece el control, vamos a ver cómo le damos funcionalidad a través de sus eventos.
El Evento principal es “Authenticate
” ahí evaluamos si el usuario y contraseña provistos son correctos de la siguiente forma: Agregamos el EventHandler onauthenticate="Login1_Authenticate"
a nuestro control LOGIN. Ahora quedará de esta forma en el webform.
<asp:Login ID="Login1" runat="server" onauthenticate="Login1_Authenticate" LoginButtonText="Ingresar" PasswordLabelText="Contraseña:" RememberMeText="Recordarme la proxima vez." TitleText="" UserNameLabelText="Usuario:"> </asp:Login>
Ahora veremos el código que se ejecutará al querer autenticarse.
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) { bool Autenticado = false; Autenticado = LoginCorrecto(Login1.UserName, Login1.Password); e.Authenticated = Autenticado; if (Autenticado) { Response.Redirect("Default.aspx"); } private bool LoginCorrecto(string Usuario, string Contrasena) { if (Usuario.Equals("maestros") && Contrasena.Equals("delweb")) return true; return false; }
En este ejemplo estoy prefijando en el código un usuario y password (“maestros”,”delweb”). En estos casos el método privado “LoginCorrecto” por lo general va a una base de datos donde están almacenados los usuarios y passwords y recién ahí se verifica si es correcto.
Otros controles relacionados a login son:
CreateUserWizard que nos da todas las facilidades para dar de alta nuevos usuarios.
Capítulos del Tutorial
- Capítulo 1: Tutorial de desarrollo web con ASP.NET
- Capítulo 2: Primera aplicación web en ASP.NET
- Capítulo 3: Ejecutar código JavaScript en ASPNET
- Capítulo 4: Archivos Web.Config y Global.asax
- Capítulo 5: Utilización de Código detrás del modelo o código en línea
- Capítulo 6: Controles de servidor y eventos
- Capítulo 7: Controles de usuarios reutilizables
- Capítulo 8: Crear una página de login, autenticación y seguridad.
En el próximo capítulo que se publica el martes veremos: Utilización de estilos en ASP.NET (CSS).
Buenas,
Comentar que en una ocasión tuve un problema con este control cuando trataba de autenticarse contra un LDAP (Active Directory). El problema estaba porque faltaba un TRIM del login, “login” y “login ” los daba como usuario correcto.
También puede interesaros diferentes usos del LDAP desde .NET
http://tectonilogia.com/usos-con-ldap-del-active-directory-desde-net/
buenas tardes seria tan amable de enviar un programa sencillo echo en visual studio C# en entorno windows sobre los recorridos de arboles binarios in orden ,post orden ,preorden y aplicando los grafos el warhall y distraj.. por fa necesito para un deber… por fa…….