Administración del estado

Slides:



Advertisements
Presentaciones similares
Rocío Contreras Aguila Primer Semestre 2010
Advertisements

ASP.NET CON C SHARP.
Curso de PHP Tema 5: Sesiones.
Internet y tecnologías web
Fernando Alonso Blázquez Sesiones 06 de Mayo de 2004.
ASP.NET Con Visual Studio.NET
Estrella 2 Introducción al desarrollo de aplicaciones Web con ASP.NET
Algunos tips en Seguridad ASP.NET 2.0
Los objetivos de esta presentación
Componentes de ASP.NET Leonardo Diez Dolinski Servicios Profesionales Danysoft.
Implementación de SQL Server 2000 Reporting Services
Planificación y despliegue de Office Sharepoint Server 2007 Rubén Alonso Cebrián
Hardware y Software de servidor
ASP.NET Daniel A. Seara Director Regional MSDN Buenos Aires – ARGENTINA NDSoft.
CI-2413 Desarrollo de Aplicaciones para Internet
Crear un formulario Web Form con Microsoft ASP.NET
Introducción a ASP.NET.
Validación de la entrada de datos de usuario
Seguimiento en aplicaciones Web con Microsoft ASP.NET
Seguridad en aplicaciones Web con Microsoft ASP.NET
Creación de controles de usuario
Configurar, optimizar e implementar una aplicación Web Microsoft ASP
Módulo 2: Uso de Microsoft Visual Studio .NET
Agregar código a un formulario Web Form con Microsoft ASP.NET
Desarrollo de una Aplicación Web sobre tecnología Microsoft .NET
Servidores Windows Http Ftp …
ARCHIVOS EN PHP.
BASES DE DATOS Desarrollo de Aplicaciones
Gestor avanzado para seguimiento de envíos
SERVICIOS DE TCP/IP.
Expert.NET Development Programando Web para principiantes 2. La leyenda continua. Por Jonas Stawski
Especialista en Business Intelligence Integration Services SSIS (Sesión 7) Microsoft SQL Server 2008 R2 (2013) Suscribase a o escríbanos.
SQL Server Integration Services SSIS
Subir Ficheros al Servidor con PHP José Sánchez Galvañ.
SESION 3 VALIDACIÓN. Septiembre 2010 SESION 3: VALIDACIÓN Qué propiedad de los controles podemos validar Control Propiedad de Validación HtmlInputText.
Introducción a los servicios Web
Seguridad en ASP.NET Daniel Laco
Programación de aplicaciones con ASP.NET
Daniel A. Seara Director Regional MSDN NDSoft
SHAREPOINT PORTAL SERVER
IIS 8 Windows Server 2012 Paulo Dias IT
Planificación y despliegue de Office Sharepoint Server 2007 Rubén Alonso Cebrián
Carlos Walzer Vemn Sistemas Como crear un sitio con ASP.NET.
Antonio Gámir TSP – Windows Client
Módulo 1: Primeros Pasos
Introducción ASP .NET.
José Antonio Rastoll Pérez Presentación PI. Índice 1. EL OBJETO SESSION Introducción. Propiedades. Funcionamiento. Variables de sesión, desventajas y.
Introducción a ASP.NET.
Almacenamiento virtual de sitios web: «Hosts» virtuales Gustavo Antequera Rodríguez.
Sesión en Servlets 31 de Marzo de Índice ¿Por qué seguir la trayectoria de usuarios? Formas de seguir la trayectoria de usuarios –Cookies –Reescritura.
Luis Barrio de Alarcón 2º Curso de ASI I.E.S Gonzalo Nazareno
Célula Sesión 3 Trabajando con Objetos Web 11 de Septiembre de 2004.
Herramientas del desarrollador Experiencias del usuario
Taller 5: Trabajo con Plantillas y uso de tecnología Ajax.
Desarrollo de sitios web con PHP y MySQL Tema 5: Sesiones José Mariano González Romano
Ing. CIP Fabián Silva Alvarado
SQL SERVER Reporting Services
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
SEMINARIOS CIFARMA.NET Administrar Internet Information Services 6.0.
David Salgado MVP C# David Salgado MVP C# Desarrollo Web con ASP.NET.
Capacitación de Herramientas para el Desarrollo WEB Modulo X- Cookies y Sesiones Sesión #5 María Paz Coloma M.
Servicios en Red UT5. Servicios FTP.
Servicio de Notas Autores: Fco. Javier López Peñalver Javier Rayado Escamilla.
HTTP Session Management Desarrollo de Aplicaciones para Internet.
SEGURIDAD EN SERVIDORES WEB (APACHE).
Gestión de usuarios básica SQL Server. Primero configuramos el SQLServer para que se pueda gestionar usuarios propios del SQLServer. Vamos a las propiedades.
Conociendo el modelo Cliente-Servidor
Módulo 4: Administrar el acceso a recursos
Conociendo el modelo Cliente-Servidor. Introducción En el mundo de TCP/IP las comunicaciones entre computadoras se rigen básicamente por lo que se llama.
Transcripción de la presentación:

Administración del estado

Descripción Administración del estado Variables de aplicación y de sesión Cookies y sesiones que no utilizan cookies

Lección: administración del estado ¿Qué es la administración del estado? Tipos de administración del estado Administración del estado en el lado del servidor Administración del estado en el lado del cliente El archivo Global.asax

¿Qué es la administración del estado? Sin administración del estado Con administración del estado Login.aspx Login.aspx Introduzca su información de inicio de sesión: Introduzca su información de inicio de sesión: Nombre Nombre John John Apellido Apellido Chen Chen Servidor Web Enviar Enviar Servidor Web Greetings.aspx Greetings.aspx Hola Hola John Chen ¡¡He olvidado quién eres!!

Tipos de Administración del estado Administración del estado en el lado del servidor Administración del estado en el lado del cliente Estado de la aplicación La información está disponible para todos los usuarios de una aplicación Web Cookies Archivo de texto que almacena información para mantener el estado Estado de sesión La información está disponible únicamente para el usuario de una sesión específica Propiedad ViewState Conserva valores entre múltiples peticiones para la misma página Base de datos En algunos casos, se utiliza el soporte de base de datos para mantener el estado en el sitio Web Cadenas de consulta Información añadida al final de una URL

Administración del estado en el lado del servidor El estado de la aplicación es un mecanismo de almacenamiento global accesible desde todas las páginas de la aplicación Web El estado de sesión está limitado a la sesión de explorador actual Los valores se conservan mediante el uso de variables de aplicación y de sesión Escalabilidad La sesión ASP.NET se identifica con la cadena SessionID Servidor Web Equipo cliente Variables de aplicación y de sesión SessionID

Administración del estado en el lado del cliente Utiliza cookies para mantener el estado Cookies persistentes Cookies temporales/no persistentes Menos fiable que las opciones de administración del estado en el lado del servidor El usuario puede eliminar cookies Menos seguro que las opciones de administración del estado en el lado del servidor Cantidad de información limitada Restricciones en el lado del cliente en el tamaño de los archivos Servidor Web Equipo cliente Cookies

El archivo Global.asax Sólo un archivo Global.asax por aplicación Web Almacenado en la raíz del directorio virtual de la aplicación Web Utilizado para gestionar eventos de aplicación y de sesión El archivo Global.asax es opcional

El archivo Global.asax (continuación) Cliente Petición Respuesta Servidor Web ASP.NET IIS ASP.NET HTTP Runtime Application_BeginRequest Application_AuthenticateRequest Application_AuthorizeRequest Application_EndRequest Application_ResolveRequestCache Application_UpdateRequestCache Application_AquireRequestState Application_ReleaseRequestState Application_PreRequestHandlerExecute Application_PostRequestHandlerExecute Ejecución de la página

Lección: variables de aplicación y de sesión Inicializar variables de aplicación y de sesión Utilizar variables de aplicación y de sesión Demostración: uso de las variables de sesión Duración de las variables de aplicación y de sesión Almacenamiento escalable de variables de aplicación y de sesión Almacenar las variables de aplicación y de sesión en una base de datos

Inicializar variables de aplicación y de sesión Las variables se inicializan en Global.asax El objeto Application comparte información entre todos los usuarios de una aplicación Web El objeto Session almacena información para una sesión de usuario concreta Sub Application_Start(s As Object,e As EventArgs) Application("NumberofVisitors") = 0 End Sub protected void Application_Start(Object sender,EventArgs e) { Application["NumberofVisitors"] = 0; }

Utilizar variables de aplicación y de sesión Establecer variables de aplicación y sesión Leer variables de aplicación y de sesión Session("BackColor") = "blue" Application.Lock() Application("NumberOfVisitors") += 1 Application.UnLock() Session["BackColor"] = "blue"; Application.Lock(); Application["NumberOfVisitors"] = (int)Application["NumberOfVisitors"] + 1; Application.UnLock(); strBgColor = Session("BackColor") lblNbVisitor.Text = Application("NumberOfVisitors") strBgColor = (string)Session["BackColor"]; lblNbVisitor.Text = Application["NumberOfVisitors"].ToString();

Demostración: uso de las variables de sesión Inicializar una variable de sesión (un número) en global.asax Acceder a la variable de sesión desde una página Acceder a la variable de sesión desde otra página y modificarla Volver a acceder a la variable de sesión desde la primera página

Duración de la variable de aplicación y de sesión Las variables de sesión tienen una duración establecida tras el último acceso 20 minutos es la duración predeterminada La duración de la sesión puede modificarse en Web.config: Las variables de aplicación persisten hasta que se provoca el evento Application_End <configuration> <system.web> <sessionState timeout="10" /> </system.web> </configuration>

Almacenamiento escalable de variables de aplicación y de sesión Por defecto, el estado de sesión se administra en proceso (in process) Inconveniente del almacenamiento en proceso: No escalable ASP.NET proporciona almacenamiento fuera del proceso (out of process) del estado de sesión El estado puede almacenarse en una base de datos SQL Server o un servidor de estado Ventajas del almacenamiento fuera del proceso: Escalabilidad Servidor de estado Granja Web Variables de sesión y de aplicación -O- SQL Cliente Variables de sesión y de aplicación

Almacenar variables de aplicación y de sesión en una base de datos Configurar el estado de sesión en Web.config Modo establecido a sqlserver o stateserver A continuación, configurar el servidor SQL Server OSQL crea varios procedimientos almacenados y bases de datos temporales para almacenar las variables 1 <sessionState mode="SQLServer" sqlConnectionString="data source=SQLServerName; Integrated security=true" /> 2 c:\> OSQL –S SQLServerName –E <InstallSqlState.sql

Lección: sesiones con y sin cookies Utilizar cookies para almacenar datos de sesión Práctica dirigida por el instructor: utilizar variables y cookies Recuperar información de una cookie Uso de sesiones que no utilizan cookies Configurar sesiones que no utilizan cookies

Utilizar cookies para almacenar datos de sesión Crear una cookie: La cookie contiene información sobre el nombre de dominio HttpCookie objCookie = new HttpCookie("myCookie"); DateTime now = DateTime.Now; objCookie.Values.Add("Time", now.ToString()); objCookie.Values.Add("ForeColor", "White"); objCookie.Values.Add("BackColor", "Blue"); objCookie.Expires = now.AddHours(1); Response.Cookies.Add(objCookie); HttpCookie objCookie = new HttpCookie("myCookie"); DateTime now = DateTime.Now; objCookie.Values.Add("Time", now.ToString()); objCookie.Values.Add("ForeColor", "White"); objCookie.Values.Add("BackColor", "Blue"); Response.Cookies.Add(objCookie); Para crear una cookie persistente, especificar el tiempo de expiración Set-Cookie: Username=John+Chen; path=/; domain=microsoft.com; Expires=Tuesday, 01-Feb-05 00.00.01 GMT

Práctica dirigida por el instructor: utilizar variables y cookies Los estudiantes: Aprenderán a utilizar las variables de aplicación y de sesión, y las cookies persistentes, para almacenar información del usuario Tiempo: 15 Minutos

Recuperar información de una cookie Leer la cookie Recuperar valores de la cookie Dim objCookie As HttpCookie = Request.Cookies("myCookie") HttpCookie objCookie = Request.Cookies["myCookie"]; lblTime.Text = objCookie.Values("Time") lblTime.ForeColor = System.Drawing.Color.FromName _ (objCookie.Values("ForeColor")) lblTime.BackColor = System.Drawing.Color.FromName _ (objCookie.Values("BackColor")) lblTime.Text = objCookie.Values["Time"]; lblTime.ForeColor = System.Drawing.Color.FromName (objCookie.Values["ForeColor"]); lblTime.BackColor = System.Drawing.Color.FromName (objCookie.Values["BackColor"]);

Uso de sesiones que no utilizan cookies Cada sesión activa está identificada y se realiza su seguimiento utilizando IDs de sesión Los IDs de sesión se comunican entre peticiones cliente-servidor utilizando una cookie HTTP o incluyéndolos en la URL Sesiones que no utilizan cookies La información de ID de sesión está codificada en URLs No pueden utilizar URLs absolutas La mayoría de navegadores limitan el tamaño de la URL a 255 caracteres, lo cual limita el uso de IDs para las sesiones que no utilizan cookies http://server/(h44a1e55c0breu552yrecobl)/page.aspx

Configurar sesiones que no utilizan cookies El estado de sesión se configura en la sección <SessionState> de Web.config Configurar cookieless = true <sessionState cookieless="true" />