¿Qué creen?
Ya regresé
En la sesión anterior, creamos nuestra clase encriptar y dejamos de tarea ingresar manualmente un usuario a su base de datos con el pass encriptado, de manera tal que podamos utilizar ya nuestra forma de login, entonces solo nos quedaría hacer la implementación de la encripción del pwd:
1. Incluir nuestra clase encriptar hasta arriba para ser ordenados
Código:
<!--#include file = "../componentes/encriptar.asp"-->
2. Implementar la encripcion del pwd:
Código:
Set ObjUsuario = new usuario
Set ObjEncriptar = new encriptar
ObjUsuario.uname = trim(Request.Form("uname"))
ObjUsuario.pwd = ObjEncriptar.MD5(trim(Request.Form("pwd")))
Set ObjEncriptar = Nothing
if ObjUsuario.Autentificar() then
'Guardamos en sesion el id del usuario
Session("usuarioID") = ObjUsuario.id
Response.Write("Ahora si ingresaste")
else
Set ObjUsuario = Nothing
Session("usuarioID") = ""
Session("loginError") = true
Response.Redirect("login.asp")
end if
Sencillísimo ¿no es así?
Esto nos asegura que ni el admin de nuestro de sistema sepa los passwords de nuestros usuarios registrados, y necesariamente tendremos que crear algún tipo de sistema para reestablecer nuestra contraseña pues como dijimos, el MD5 es un "hash" unidireccional.
El código de nuestro form de login hasta el momento se debe ver así:
Código:
<!--#include file = "../conexion.asp"-->
<!--#include file = "../componentes/usuario.asp"-->
<!--#include file = "../componentes/encriptar.asp"-->
<!--#include file = "../admin/header.asp"-->
<%
Dim formaHasidoEnviada
Dim ObjUsuario
Dim strError
Dim ObjEncriptar
formaHasidoEnviada = len(Request.Form("formaEnviada")) > 0
strError = ""
if not formaHasidoEnviada then
if Session("loginError") then
strError = "Usuario o contraseña incorrectos, por favor intente de nuevo"
Session.Contents.Remove("loginError")
end if
%>
<div class="error"><%=strError%></div>
<form action="login.asp" method="post" id="formaAsp">
<input type="hidden" name="formaEnviada" value="1" />
<input type="hidden" name="accion" value="ingresar" />
<fieldset class="forma">
<legend>Introduzca sus datos de acceso</legend>
<div class="formaEtiqueta">
<label for="uname">Usuario: </label>
</div>
<div class="formaCampo">
<input type="text" id="uname" name="uname" value="" maxlength="50" />
</div>
<br />
<div class="formaEtiqueta">
<label for="pwd">Password: </label>
</div>
<div class="formaCampo">
<input type="password" id="pwd" name="pwd" maxlength="8" value="" />
</div>
<br />
<input type="submit" value="Ingresar" class="formaBoton" />
</fieldset>
</form>
<%
else
Set ObjUsuario = new usuario
Set ObjEncriptar = new encriptar
ObjUsuario.uname = trim(Request.Form("uname"))
ObjUsuario.pwd = ObjEncriptar.MD5(trim(Request.Form("pwd")))
Set ObjEncriptar = Nothing
if ObjUsuario.Autentificar() then
'Guardamos en sesion el id del usuario
Session("usuarioID") = ObjUsuario.id
Response.Write("Ahora si ingresaste")
else
Set ObjUsuario = Nothing
Session("usuarioID") = ""
Session("loginError") = true
Response.Redirect("login.asp")
end if
end if
%>
<!--#include file = "../admin/footer.asp"-->
En unos minutos, crearemos el index de nuestro administrador.
Salud