ASP - control de acceso

 
Vista:

control de acceso

Publicado por moise (3 intervenciones) el 22/03/2007 08:51:53
hola, ingreso a este foro por ke tengo un gran problema que me ha hecho perder demaciado tiempo. la verdad que soy nuevo en asp y no he tenido mayores problemas salvo ahora con el control de acceso a mi sistema, tengo usuarios ingresados con sus respectivos password, un formulario "default.asp" donde se ingresa usuario y password y envio los datos por metodo post una pagina llamada "registrar.asp" que es donde proceso el usuario y el password, y si estos ultimos corresponden me tira a "ingreso1.asp", hasta ahi todo perfecto, pero me he dado cuenta que por medio de la barra de direccion cualquier persona podria entrar sin registrarse por ejemplo localhost/default.asp/ingreso1.asp investigando encontre un par de ejemplos donde se usan variables de session pero no logro que me redireccione a default.asp cuando en la barra de direccion coloco /ingreso1.asp
voy a colocar mi codigo por si alguien me puede ayudar o sugerir alguna solucion de antemano muchas gracias.

'registrar.asp
'Recogemos el formulario default
login=Trim(Request.Form("login"))
password=Trim(Request.Form("Password"))
sSQL="SELECT * FROM usuario WHERE login = '" & login & "' AND password = '" & password & "'"

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "xxxxxxxxx"
set rs = Conn.Execute(sSQL)
if rs.EOF then
Session("aut")=False
Call PrintMessagesConfirmacion("<B>ADVERTENCIA:</B> El Usuario: '" & login & "' No se encuentra registrado")
else

Session("aut")= true
Response.Redirect("ingreso1.asp")

end if
----------------------------------------------------------
y en la pagina ingreso1.asp coloco esto

'ingreso1.asp
<% response.Buffer = True
if Session("aut")=False then
Response.redirect=("default.asp")
Response.End
end if
%>
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

session

Publicado por ruben (12 intervenciones) el 22/03/2007 12:41:40
en la pagina donde compruebas el usuario antes de redireccionar a la pagina pones
session("sesion")=1
comentario: vale cualquier numero

y despues en cada asp le pongo

if session("sesion")<>1 then
response.redirect("index.html")
end if

y listo
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

RE:session

Publicado por moise (3 intervenciones) el 22/03/2007 19:52:02
y por ke no me funciona? seria mucho pedirte ke me ayudes basandote en el codigo ke publike, esto ya lo he hecho como 100 veces, seria mucho pedir?, muchas gracias
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

RE:control de acceso

Publicado por Oscar (50 intervenciones) el 22/03/2007 23:35:24
Lo que te dice ruben es mas menos lo mismo que tienes en tu codigo y a simple vista no encuentro error en tu codigo , si me intriga por que pusiste el response.end despues de redirect , el comando end no se ejecuta, tu dices que pueden ingresar directamente desde la barra de direccion saltandose la session , como verificaste esto? , te lo pregunto por que si lo verificas en tu navegador momentos despues que estuviste probando correctamente el ingreso de la session , puede que la variable session te este quedando activa , esto es si ingresaste a default.asp iniciaste una session=true ahi te hizo todo bien, cerraste tu navegador luego lo abres y escribes la direccion de tu ingreso1.asp seguramente te va a ingresar por que tu primera session sigue en true , no se si en algun momento cierras la session o la caducas ..

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