ASP.NET - duda sobre logeo

 
Vista:

duda sobre logeo

Publicado por carolina (2 intervenciones) el 10/07/2008 19:07:51
hola a todos

mi duda es la siguiente tengo este codigo:

If con.State = ConnectionState.Closed Then con.Open()
Dim da As New OleDb.OleDbDataAdapter("select * from login where log_est='" & Me.TextBox1.Text & "' and pas_est='" & Me.TextBox2.Text & "'", con)
Dim ds As New DataSet
da.Fill(ds)
con.Close()
If ds.Tables(0).Rows.Count > 0 Then

Datos.Mensage("Bienvenido a la web!")
Response.Redirect("/WebSite5/paginasregistrados/inicio.aspx") 'gracias a oswaldo :D
Else
Datos.Mensage("Su login o password no son correctos, intente nuevamente")

End If

pero creo q no es tan seguro por q lo mas probable es q un usuario cualquiera copie el link del usuario logeado y pueda acceder sin tener contraseña ni password, si alguien sabe plz me dice.
por otro lado intente poner este codigo en el boton del control login q trae asp.net con un diseño mas lindo, pero no se como decir lo q este en el textbox sea igual a lo de la base de datos osea esta parte: log_est='" & Me.TextBox1.Text & "' pero no se como se llama ese textboxt, supuestamente dice q es username pero no

si alguien sabe me dice plz gracias o una forma mas facil q sea tipo asistente
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:duda sobre logeo

Publicado por Romi (20 intervenciones) el 10/07/2008 20:17:03
Si al control de login no le has cambiado el nombre, entonces el nombre de los textbox es
Login1.UserName para el usuario y Login1.Password para la contraseña.

Slds.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:duda sobre logeo

Publicado por ANTONIO (106 intervenciones) el 10/07/2008 20:20:13
YO HAGO ALGO SIMILAR A TI, ES DECIR COMPRUEBO EN UNA BASE DE DATOS QUE EL USUARIO Y LA CONTRASEÑA SON CORRECTOS PERO UNA VEZ QUE SON CORRECTOS ANTES DE ENVIARLO A LA PAGINA inicio.aspx CREO UNA VARIABLE SESSION , POR EJEMPLO SESSION("LOGUEO")="123QWE" Y LUEGO LO ENVIO A LA PAGINA INICIO.ASPX.
¿QUE TENGO QUE PONER EN LA PAGINA INICIO.ASPX EN EL EVENTO ONLOAD?
PUES IF ("SESSION("LOGUEO")<>"123QWE") THEN RESPONSE.REDIRECT("DONDESEA.ASPX").

ASEGURATE DE QUE CUANDO EL CLIENTE SE DESCONECTE DE LA PAGINA SE ELIMINEN LAS VARIABLES DE SESSION, CON UN SESSION.CLEAR SESSION.ABANDON Y ASI AUNQUE UN LISTO COPIE LA RUTA DE LA PAGINA NUNCA PODRA ENTRAR PORQUE LA SESSION ESTARA EN BLANCO.
ESPERO QUE HAYAS CAPTADO LA IDEA.
SALUDOS.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:duda sobre logeo

Publicado por @vm (196 intervenciones) el 10/07/2008 21:05:55
Cuidado con esta línea donde concatenas valores obtenidos, aunque los obtenes de tu objeto Login, el hecho de concatenar, estas abriendo una puerta a cualquiera que quiera acceder a tu sitio con conocimiento de SQL.

Dim da As New OleDb.OleDbDataAdapter("select * from login where log_est='" & Me.TextBox1.Text & "' and pas_est='" & Me.TextBox2.Text & "'", con)

Trata de usar procedimiento almacenado
o
Valida los datos antes de concatenarlos que no lleven caracteres válidos para SQL como el guión intermedio o la comilla simple; y válida que los valores sean del tipo y longitud que esperas.

con esa concatenación q tienes cualquiera podra acceder al sitio e incluso hacer de más.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar