Ver Mensaje Individual
  #1 (permalink)  
Antiguo 17/11/2009, 19:12
KorbenX
 
Fecha de Ingreso: noviembre-2009
Mensajes: 29
Antigüedad: 14 años, 6 meses
Puntos: 0
Session ASP.NET

Saludos!,

Estoy programando una aplicación con Visual Studio 2008 en C#, tengo una pagina de login la cual revisa si el usuario es correcto y creo unas variables session:

Código:
Session.Add("usuario", VALOR);
Session.Add("privilegio", VALOR);
luego me redirecciona con response.redirect a otra pagina donde tengo un boton cerrar sesion la cual borra la session con Session.abandon();

Cada pagina tengo en su evento Page_Load:

Código:
if (Session["usuario"] == null || (String)(Session["privilegio"]) != "admin")
{
    Response.Write("<script language=javascript> history.back(); </script>");
}
EL cual si no corresponde me envia a la pagina anterior del usuario.

El problema surge cuando me registro con un usuario admin (por ejemplo) y entro a una pagina que corresponde solo al administrador, luego cierro sesion y entro como otro usuario de menor privilegio, entra a su menu correspondiente pero en el browser si escribo la pagina que corresponde solo al administrador esta logra entrar!!!, y solo ocurre si entre con el administrador antes, es decir, como que se guarda "algo" que permite el ingreso.

Alguna idea de mi problema??, u otra alternativa para solucionar esto (no se si el control login de asp.net permite esto, si alguien sabe algun tutorial se agradecería!)

Gracias!