Foros del Web » Programando para Internet » ASP Clásico »

Autentificacion de usuarios

Estas en el tema de Autentificacion de usuarios en el foro de ASP Clásico en Foros del Web. Hola: estoy elaborando un sistema y necesito restringir el acceso a mis paginas con un login y contraseña. estoy poniendo este codigo en todas las ...
  #1 (permalink)  
Antiguo 30/06/2006, 11:08
 
Fecha de Ingreso: junio-2006
Mensajes: 17
Antigüedad: 18 años
Puntos: 0
Pregunta Autentificacion de usuarios

Hola:

estoy elaborando un sistema y necesito restringir el acceso a mis paginas con un login y contraseña.

estoy poniendo este codigo en todas las paginas que quiero restringir pero no no lo hace del todo en la pagina mas importante:

<%
Response.Buffer = true
' compruebo que tengo la variable de sesion creada y con el dato correcto
if session("autentificado") <> "si" then
response.redirect "acceso.asp"
response.end
end if
%>

aun cuando me autentifique correctamente no me da acceso deja la pantalla en blanco, me pregunto sera por que mi pagina tiene 3 frames, ya lo probe con paginas sin frames y si funciona.

ustedes me pueden decir por que no me funciona en la pagina index con tres frames
  #2 (permalink)  
Antiguo 30/06/2006, 11:27
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años, 1 mes
Puntos: 39
Yo lo hago asi este codigo a todas las páginas que quiero validar el usuario:

<%
'Vemos que nivel tiene y si lo dejamos pasar o bien si dierón la página completa no dejamos que entre
If session("nivel")<="1" then
'Esto se responde si no esta en la base o bien no tiene privilegios para ver la página
Response.Write("Usted no tiene acceso")
'Si esta en la base y tiene privilegio se ejecuta esto
else
%>
Codigo HTML
<%
end if%>



la variable nivel se la paso desde la página de logeo:

<%

'Tomamos del formulario los campos enviados que son usuario y password
Login = Trim(Request("usuario"))
Password = Trim(Request("pass"))

'Le hacemos una consulta a la base
Set rs = Server.CreateObject("ADODB.Recordset")
Sql= "SELECT * from usuarios where Login= '" & Login & "' and Password = '" & Password & "'"
Set rs = Conexion.execute (Sql)
If not rs.EOF then
' nos ha devuelto un registro, ahora miraremos si es valido
' con ello evitamos el ataque t&iacute;pico SQL
if rs("Login")=Login and rs("Password")=Password then
' si el usuario esta en la base de datos y el password coincide
If not rs.eof then
usuario = Rs( "Cve_usuario" )
precede = Rs( "precede" )
Depto = Rs( "Depto" )
end if
session("nivel")=rs("Alta")
response.redirect "intro.asp?usuario="&usuario&"&pre="&precede&"&Dep ar="&Depto&""
end if
Else
session("nivel")=-1

end if
rs.close
set rs=nothing
if session("nivel")=-1 or session("nivel")="" then
' no hemos encontrado el registro
' eso indica que el usuario y/o la password son erroneos
response.redirect "default.asp?msg=Error!%20usuario%20o%20clave%20in correcta"
end if

%>



y login y password los obtengo de un formulario ok:::


SALDUOS::::::::::
  #3 (permalink)  
Antiguo 30/06/2006, 11:29
Avatar de Potro  
Fecha de Ingreso: abril-2001
Mensajes: 2.249
Antigüedad: 23 años, 1 mes
Puntos: 39
sorry en la página de logeo creo la session:

session("nivel")=rs("Alta")


Alta es un campo en la base de datos que jala del usuario y puedes controlar niveles de seguridad.

SALDUOS:::::::::
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:30.