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

[0] Índice de Mensajes

Ir a la versión completa