Bueno, les comento que estoy realizando un proyecto para la universidad el cual es para una clinica de oftalmología, este es el loggin que yo he codificado y quisiera saber si podria ser facilmente filtrado o como es la mejor manera de hacerlo, gracias de antemano!
private void ingresar()
{
string cadena = "";
////en esta variable se almacenara la conteaseña si existe.
try
{
u1.Id = txtID.Text;
//capturamos el usuario
cadena = u1.Consultar();
//realizamos una conexion a la bd para obetener la contraseña y guardarla en la variable "cadena"
if (this.txtPass.Text == cadena)
//comparamos el texbox del password con la contraseña obtenida mediante la consulta sql.
{
this.Session["us"] = txtID.Text;
this.Session["cargo"] = u1.ConsultarTipo();
this.Server.Transfer(".aspx");
}
else
{
if (cadena == "")
{
Label1.Text = "Usuario inexistente.";
}
else
{
Label1.Text = "Contraseña incorrecta.";
}
}
}
finally
{
txtID.Text = "";
txtPass.Text = "";
}
es ingeniosa... xD asumimos que u1 esta protegido contra sqlinjection vrd?
agrega una variable booleana al usuario ( is_active ) de ese modo podras banearlo y/o evitar que inicie session
Cita de: Kase en 3 Abril 2012, 06:18 AM
es ingeniosa... xD asumimos que u1 esta protegido contra sqlinjection vrd?
agrega una variable booleana al usuario ( is_active ) de ese modo podras banearlo y/o evitar que inicie session
Hola!!
u1 es el objeto de la clase Usuario
DBConn.Usuario u1 = new DBConn.Usuario();
Ahora tengo 2 consultas...
1- Como puedo proteger "u1" contra sqlinjection?
2- podrias explicarme un poco mas a fondo la variable booleana (is_active) primera vez que escucho de ella y no me queda muy clara con lo que he leido...
Muchisimas gracias!!!! Saludos!
simple a tu objeto usuario y a tu base de datos añadele un variable booleana para revisar cuando esta activo... (ejemplo is_active ) te quedaria u1.is_active
el problemita con tu codigo es esto
cadena = u1.Consultar()
asumo que consultar es un metodo que solo devuelve el usuario.. si es asi tendrias que hacer otro metodo u1.consultar_activo() que te retorne el valor de la variable is_active
ahora durante el proceso de login puedes hacer un
if (! u1.consultar_activo()){
Label1.text = ' tu no puede loguear por que as sido baneado'
}else{
// resto de tu login
}
cuando quieras impedir el acceso a alguien cambias su variable is_active = False
yo no programo en asp.. xD pero la idea es esa... añadir a tu usuario una variable de baneado para permitirle el login o no.
Cita de: Kase en 3 Abril 2012, 08:30 AM
simple a tu objeto usuario y a tu base de datos añadele un variable booleana para revisar cuando esta activo... (ejemplo is_active ) te quedaria u1.is_active
el problemita con tu codigo es esto
cadena = u1.Consultar()
asumo que consultar es un metodo que solo devuelve el usuario.. si es asi tendrias que hacer otro metodo u1.consultar_activo() que te retorne el valor de la variable is_active
ahora durante el proceso de login puedes hacer un
if (! u1.consultar_activo()){
Label1.text = ' tu no puede loguear por que as sido baneado'
}else{
// resto de tu login
}
cuando quieras impedir el acceso a alguien cambias su variable is_active = False
yo no programo en asp.. xD pero la idea es esa... añadir a tu usuario una variable de baneado para permitirle el login o no.
Muchisimas gracias por responder mi duda, me ha quedado bastante clara!!
Saludos!!