Sie sind auf Seite 1von 4

TALLER PARA CREACION DE SESIONES DE USUARIO

Primero es necesario tener registrado en la base de datos un usuario con Discriminador de ADMINISTRADOR, por lo menos un usuario NORMAL y un usuario VIP.

PGINA DE ADMINISTRACION Es necesario que accedan nicamente usuarios autenticados a ver el contenido de las pginas. Por lo que solo los administradores pueden acceder al men de Administracin y a las respectivas paginas relacionadas al tema. En la pgina de Administracion.aspx agregamos lo siguiente: La palabra Bienvenido y a lado un label llamado Lblnombre Un botn para Cerrar Sesin Observe la siguiente pantalla:

PGINA DE CLIENTES En cambio los clientes deben acceder a una nueva pgina llamada Clientes.aspx (Crear la misma). Agregar en un Label: PAGINA DE CLIENTES, BIENVENIDO y alado un label con el nombre lblnombre y un botn para Cerrar Sesin, como se muestra en la imagen

Ing. MSc. Vernica Pailiacho

PGINA PRINCIPAL La pagina principal en ASP.Net es el Default.apsx por lo tanto en esta pgina se debe hacer le inicio de sesin. Para esto se usa el componente Login de la categora Login

Una vez cargado en la pgina seleccionamos Autoformat para seleccionar el color

Ing. MSc. Vernica Pailiacho

Cambie el Id del componente en las propiedades y llmelo LOGIN Si est instalado en Ingles el Visual Studio, podemos cambiar el texto del componente en las propiedades del mismo, como por ejemplo LoginButtonText: Iniciar RememberMeText: Recordar la prxima vez TitleText: INICIO DE SESION Y as los dems mensajes se pueden poner en espaol. Autenticacin de usuario Dar doble clic sobre el componente y escribir el siguiente cdigo:
try { //invocar al web service para autenticar a una persona este debe devolver el nombre y el tipo de usuario que es persona.wspersona per = new persona.wspersona(); DataSet ds; ds = per.autenticar_usuario(Login.UserName ,Login.Password ); //preguntar si en el data set hay algun registro si es asi asignar a la variable de Sesion el nombre del usuario y de acuerdo al tipo de usuario redirecionarle al lugar permitido if ((ds.Tables [0].Rows.Count != 0) ) { //variable de sesion en donde se lamacena el nombre del usuario Session["Usuario"] = ds.Tables[0].Rows[0]["nombre"].ToString(); Session["Tipo"] = ds.Tables[0].Rows[0]["discriminador"].ToString(); //obtener el tipo de usuario que es (ADMINISTRADOR, NORMAL O VIP) // string tipo = ds.Tables[0].Rows[0]["discriminador"].ToString(); //si es ADMINISTRADPOR se abrira la pagina de Administracion.aspx, caso contrario la pagina Clientes y si no es usuario autenticado no ingresara a ninguna pagina if (tipo == "ADMINISTRADOR") { Response.Redirect("Administracion.aspx"); } else { Response.Redirect("Clientes.aspx"); } } else { Response.Redirect("Default.aspx"); }

Ing. MSc. Vernica Pailiacho

} catch (Exception ex) { }

ACCESO RESTRINGIDO A PGINAS La pgina de administracin.aspx debe conservar la sesin iniciada y tendr acceso a ella solo usuarios autenticados, para esto damos doble clic sobre el web form (en la interfaz) y se crear el mtodo PAGELOAD. Dentro de este escribimos el siguiente cdigo:
if (!this.IsPostBack) { try { if (Session["Usuario"] != null) { //pregunta si es administrador ingresa, caso contrario le envia al Default.aspx string tipo = Session["Tipo"].ToString(); if (tipo == "ADMINISTRADOR") { // mostrar el nombre del usuario autenticado lblnombre.Text = Session["Usuario"].ToString(); } else { Response.Redirect("Default.aspx"); } } else { Response.Redirect("Default.aspx"); } } catch (Exception ex) { } }

Programacin del Botn Cerrar Sesin De doble clik sobre el botn e inserte el siguiente cdigo Session.Abandon(); //cierra la session Response.Redirect("Default.aspx"); //redirecciona a otra pagina

Este cdigo de acceso restringido a las pginas se debe agregar en todas las pginas que tienen restriccin, por lo tanto agregue en la pgina Clientes.aspx Tomando en cuenta que ahora el tipo puede ser NORMAL o VIP Ing. MSc. Vernica Pailiacho 4

Das könnte Ihnen auch gefallen