CLR: .Net / Mono / Boo / Otros CLR > ASP .NET
Gestión de Session y Cookies
(1/1)
calamidad:
Hola a todos,
soy nuevo en ASP .NET y estoy desarrollando una aplicación web que se conecte a una base de datos MySql. He conseguido autentificar a los usuarios, pero ahora quiero controlar las sesiones mediante Cookies y Session. Principalmente, pretendo controlar que ningún usuario acceda a cualquier página sin estar autentificado y que si pasa un tiempo determinado inactivo se cierre la sesión y tenga que volver a hacer login. De momento, he estado haciendo pruebas intentando controlar Session desde el Site.Master, pero no sé cómo trabajar con Cookies.
Mi web.config es el siguiente:
--- Código: XML --- <authentication mode="Forms"> <forms name="iQCookie" cookieless="UseCookies" slidingExpiration="true" timeout="3" loginUrl="/Vistas/Account/LogOn.aspx" requireSSL="false"/> </authentication>
Espero que puedan saber guiarme o poner algún código de ejemplo. Muchísimas gracias de antemano. :good:
gerloxxx:
Hola, te paso una alternativa a las variables de session:
puedes buscar en google acerca de: FormsAuthentication...
para darte una idea: despues de comprobar que el usuario y su contraseña es correcta (ya sea desde una base de datos, del Web.config o de donde sea).... creas un ticket para ese usuario:
--- Código: C# --- FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1, "nombre de usuario", DateTime.Now, DateTime.Now.AddMinutes(30), isPersistent, "informacion del usuario logueado***", FormsAuthentication.FormsCookiePath);//Luego encriptas el ticket string encTicket = FormsAuthentication.Encrypt(ticket);// Creas la CookieResponse.Cookies.Add(new HttpCookie(FormsAuthentication.FormsCookieName, encTicket));//y lo redireccionas Response.Redirect(FormsAuthentication.GetRedirectUrl(txtUsu.Text, true));
***Luego en otras páginas puedes preguntar acerca de la informacion que mandaste del usuario logueado
--- Código: C# --- if (Context.User.Identity.Name ..........
por ultimo en el web.config le indicas que la autentificacion es por formas
--- Código: XML --- <authentication mode="Forms"> </authentication>
claro existen varias formas de hacer esto, tambien puedes controlar el acceso de las páginas por medio de carpetas...
--- Código: XML --- <location path="CarpetaARestringir"> <system.web> <authorization> <deny users ="?" /> </authorization> </system.web></location>
Saludos
calamidad:
Muchísimas gracias me ha servido de mucha ayuda.
Un saludo!
Navegación
Ir a la versión completa