Desarrollo web con ASP.NET

Slides:



Advertisements
Presentaciones similares
Principales Mejoras y Versión Enterprise Edition.
Advertisements

SERVICIOS WEB EN.NET INTEGRANTES: ADRIANA BLANCO PEÑA MIRIAM SORIANO HERNANDEZ ALVARO PETROVICH CID CONTRERAS LUIS RAMIREZ PALESTINO.
Internet y tecnologías web
ASP.NET Con Visual Studio.NET
Mejores Prácticas en ASP.NET y AJAX
Conceptos fundamentales de ASP.NET
Componentes de ASP.NET Leonardo Diez Dolinski Servicios Profesionales Danysoft.
La plataforma .NET David Carmona
Creación de un sitio ASP.NET Leonardo Diez Dolinski Servicios Profesionales Danysoft.
Implementación de SQL Server 2000 Reporting Services
Microsoft Office Sharepoint Server Business Intelligence Rubén Alonso Cebrián Código: HOL-SPS07.
Unidad 2 IDE Visual Studio.Net [UTN - Tecnologías de desarrollo de software IDE] [2009]
Rossy Garita Componentes fundamentales de CLR y
ASP.NET Daniel A. Seara Director Regional MSDN Buenos Aires – ARGENTINA NDSoft.
Administración del estado
Introducción a Microsoft .NET
Crear un formulario Web Form con Microsoft ASP.NET
Introducción a ASP.NET.
Validación de la entrada de datos de usuario
Agregar código a un formulario Web Form con Microsoft ASP.NET
Desarrollo de una Aplicación Web sobre tecnología Microsoft .NET
Agenda Conceptos Claves.
Modelando aplicaciones
INDUSOFT Software para generación de completas aplicaciones industriales multi-plataforma Se compone de un completo y potente conjunto de herramientas.
Microsoft SQL Server 2008 – SQL Server Integration Services
INTRODUCCION A CSS.
Programación Visual de Sistemas
"java del lado del servidor" Servlet y JSP Java Server Pages.
Directivas de Procesamiento de ASP
Seguridad en ASP.NET Daniel Laco
Systems Management Server 2003 Santiago Pastor Zaltor Soluciones Informáticas.
Carlos Walzer Vemn Sistemas Como crear un sitio con ASP.NET.
Módulo 1: Primeros Pasos
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
Introducción ASP .NET.
La plataforma .NET David Carmona
Plataforma Microsoft.NET
Introducción a ASP.NET.
Sistema La Plata Módulo I INTRODUCCION A APLICACIONES WEB.
Interacción Persona Ordenador
Herramientas del desarrollador Experiencias del usuario
Ing. CIP Fabián Silva Alvarado
TALLER DE PROGRAMACIÓN III
Java Server Faces.
Web Services Daniel Seara. Fundamentos Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización.
SQL SERVER Reporting Services
INTRODUCCIÓN A LA PROGRAMACIÓN WEB
InfoPath Ventajas y Uso.
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.
Contenido: 1- Que es el .Net Framework 2- Arquitectura en .Net
“SERVLETS”. Paola Rojas Contreras Juan Villarroel Leiva José Miguel Perez V. Departamento de Electrónica.
Lenguajes de programación para la web Lenguaje html Lenguaje java script Es un lenguaje estático para el desarrollo de sitios web Ventajas: Sencillo que.
Unidad didáctica 6 Diseño de páginas Web.
Publicación de bases de datos Access en la web
QUÈ ES VISUAL BASIC ES UN LENGUAJE DE PROGRAMACIÒN QUE SE HA DISEÑADO PARA FACILITAR EL DESARROLLO DE APLICACIONES EN EL ENTORNO GRÀFICO. (GUI GRAPHICAL.
QUÈ ES VISUAL BASIC ES UN LENGUAJE DE PROGRAMACIÒN QUE SE HA DISEÑADO PARA FACILITAR EL DESARROLLO DE APLICACIONES EN EL ENTORNO GRÀFICO (GUI GRAPHICAL.
Lenguajes de Programación
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
David Salgado MVP C# David Salgado MVP C# Desarrollo Web con ASP.NET.
Clase 6 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
QUIMESTRE II PARCIAL I.
Diseño de Servicios Web Internet Information Server © Copyright 2003 Víctor ROBLES FORCADA
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
VISUAL BASIC.NET MODULO III. Introducción a las aplicaciones Web Forms Tradicionalmente: Las aplicaciones Web se desarrollaban siguiendo un modelo mixto.
Clase 5 Curso Microsoft.NETCurso Microsoft.NET I.S.F.T. N° 182I.S.F.T. N° 182.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
QUÈ ES VISUAL ESTUDIO ES UN LENGUAJE DE PROGRAMACIÒN QUE SE HA DISEÑADO PARA FACILITAR EL DESARROLLO DE APLICACIONES EN EL ENTORNO GRÀFICO. (GUI GRAPHICAL.
ACCESO A DATOS EN ASP.NET Controles de origen de datos Controles enlazados a datos.
Softlogia S.R.L. Formación de Recursos Humanos Java Server Faces Instructor: Martin R. Baspineiro.
Servicios Web-SOA Aula: Fomento 05/06/2006 a 08/05/2006.
Transcripción de la presentación:

Desarrollo web con ASP.NET © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Agenda Introducción a ASP.NET Modelo de ejecución Web Forms Trabajo con controles Estado en ASP.NET Aplicaciones web Seguridad Desarrollo web para dispositivos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET Historia del desarrollo web HTML (1991) Páginas estáticas orientadas al contenido CGI (1993) Ejecutables que generan HTML dinámicamente Versión mejorada: ISAPI ASP (1996), PHP (1997), JSP (1999) Páginas HTML que incluyen código script dinámico © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET Diferencias con desarrollo Windows VB 6 Private Sub Command1_Click() If List1.SelCount > 0 Then Label1.Caption = "Hola, " & List1.Text Else Label1.Caption = "" End If End Sub © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET Diferencias con desarrollo Windows <html> <%@ Language=VBScript %> <% nombres = array("Antonio", "Jose", "Alberto", "Luis", "Benito") %> <body> <p>Seleccione su nombre:</p> <form method="POST" action="HolaMundo.asp"> <p><select name="nombre" size="5"> <% for i = 0 to UBound(nombres) %> <option <% if Request.Form("nombre") = nombres(i) then %> selected <% end if %> > <%=nombres(i) %></option> <% next %> </select><br><br> <input type="submit" value="Di hola"></p> </form> <% if Request.Form("nombre") <> "" then %> <p>Hola, <%=Request.Form("nombre") %></p> <% end if %> </body> </html> ASP © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET Diferencias con desarrollo Windows Sin estado <html> <%@ Language=VBScript %> <% nombres = array("Antonio", "Jose", "Alberto", "Luis", "Benito") %> <body> <p>Seleccione su nombre:</p> <form method="POST" action="HolaMundo.asp"> <p><select name="nombre" size="5"> <% for i = 0 to UBound(nombres) %> <option <% if Request.Form("nombre") = nombres(i) then %> selected <% end if %> > <%=nombres(i) %></option> <% next %> </select><br><br> <input type="submit" value="Di hola"></p> </form> <% if Request.Form("nombre") <> "" then %> <p>Hola, <%=Request.Form("nombre") %></p> <% end if %> </body> </html> Diseño Petición Respuesta Composición HTML Eventos Private Sub Command1_Click() If List1.SelCount > 0 Then Label1.Caption = "Hola, " & List1.Text Else Label1.Caption = "" End If End Sub Estado Paso de parámetros Propiedades Lógica © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET ¿Qué es ASP.NET? ASP.NET permite generar aplicaciones web con el paradigma de Windows Diseño + lógica Componentes gráficos Eventos Propiedades Estado Construido sobre .NET © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Introducción a ASP.NET ¿Qué es .NET? VB C++ C# JScript … Visual Studio.NET Common Language Specification ASP.NET: Web Services and Web Forms Windows Forms ADO.NET, XML, Enterprise Services Base Class Library Common Language Runtime © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución Arquitectura con IIS 5 INETINFO.exe ASPNET_WP.exe Aspnet_wp.exe ISAPI ASP.NET HTTPHandlers ASPX ASMX .ASPX, .ASCX, .ASMX CLR App Domain CLR App Domain HTTPModules Auth Sesión Caché Filtros ISAPI CLR App Domain TCP/IP © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución Arquitectura con IIS 6 W3WP.exe ISAPI ASP.NET .ASPX, .ASCX, .ASMX HTTPHandlers Aspnet_wp.exe HTTPModules Filtros ISAPI HTTP.SYS © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución Compilación dinámica Procesar ¿test.aspx compilada? Leer Test.aspx Instanciar Generar Test.cs ISAPI ASP.NET GET test.aspx GET test.aspx Clase compilada Compilar Respuesta HTML Respuesta HTML © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Compilación dinámica © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución El código está detrás Separación en dos ficheros físicos Código por detrás de la página (“code-behind”) Código en cualquier lenguaje .NET soportado ASP ASP .NET <tags> <tags> código código test.asp test.aspx test.aspx.cs © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Modelo de ejecución Code-behind Test.aspx Test.cs Generar Compilar Test_aspx Deriva de… TestClass.cs Compilar TestClass (Opcional) © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Code behind © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms ¿Qué son? Formularios semejantes a Windows pero en Web Separación lógica – diseño Componentes gráficos Estado Eventos Propiedades © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms Controles de servidor Componentes que encapsulan la generación de HTML Semejantes a los controles de Windows Pleno soporte desde Visual Studio Paleta de componentes Layout Diseñadores de propiedades Asistentes © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Controles de servidor © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms Propiedades de controles Los controles tienen propiedades Editables en modo diseño También accesibles desde código A partir del llamado árbol de controles Test.aspx HtmlLiteral ListBox HtmlLiteral <html> <body> <select> … </select> </body> </html> © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms Estado Los controles de servidor mantienen sus propiedades Dos mecanismos Procesamiento automático de variables del post Viewstate: variable de formulario oculta Cuidado con el tamaño, deshabilitar si no se utiliza © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Web Forms Eventos de servidor Los controles pueden lanzar eventos Ya sean HtmlControl o WebControl Load, Click, TextChange, SelectedItemChange… Posibilidad de procesamiento: En servidor En cliente Encolados hasta siguiente postback Con todo esto cambia el paradigma de desarrollo De petición-respuesta a event-driven © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Desarrollo con eventos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Controles HTML Todos los elementos HTML tienen un control asociado Sólo hay que marcarlo con runat=“server” Sólo tienen sentido si son dinámicos o queremos responder a un evento En caso contrario utilizar literales © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Controles HTML (II) System.Object System.Web.UI.Control HtmlControl HtmlImage <img> HtmlContainerControl HtmlInputControl HtmlForm <form> HtmlInputFile <input type=file> HtmlGenericControl <span>, <div>, … HtmlInputHidden <input type=hidden> HtmlSelect <select> HtmlInputImage <input type=image> HtmlTable <table> HtmlInputRadioButton <input type=radio> HtmlTableCell <td>, <th> HtmlInputText <input type=text> HtmlTableRow <tr> HtmlInputButton <input type=button> HtmlTextArea <textarea> HtmlInputCheckBox <input type=checkbox> HtmlAnchor <a> HtmlButton <button> © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles WebControls Nuevo conjunto de controles con propiedades consistentes Ej. Misma propiedad BackColor en table y span Controles complejos Ej. Calendar, DataGrid Se adaptan al browser © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles WebControls (II) System.Object System.Web.UI.Control Repeater Xml WebControl AdRotator ListControl BaseDataList RadioButtonList DataGrid CheckBoxList DataList DropDownList Button ListBox Calendar Panel CheckBox Table RadioButton Image HyperLink ImageButton TextBox Label © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles WebControls (III) ImageButton Calendar Image DataList AdRotator DataGrid © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Adaptación al browser © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Controles Internet Explorer Controles extendidos complejos DHTML Descargable de forma separada Toolbar TreeView TabStrip MultiPage © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Controles de terceros Cientos de nuevos controles en http://www.asp.net/ControlGallery © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Desarrollo de controles WebControls Derivar de System.Web.UI.Control Añadir propiedades, eventos, métodos Sobrescribir Render() Diseñadores, adaptación, Intellisense… Controles de usuario Forma sencilla de crear controles Composición de controles reutilizables Lógica encapsulada en el control © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Controles de usuario © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Enlace a datos Todo es enlazable Múltiples mecanismos En línea con <%# Expresión %> Utilizando propiedad DataSource del control Utilizando colección DataBindings del control Para efectuar el enlace llamar a DataBind() © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Enlace a datos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Plantillas (templates) Los controles pueden ser personalizados con sus propiedades o usando hojas CSS Colores, bordes, letra, etc. Semejante a Windows 9x / NT / 2000 Las plantillas permiten definir layouts Modificación de porciones del interfaz Semejante a Windows XP / 2003 Muchos controles exponen plantillas que son personalizables Ej. Cabeceras, celdas, elemento de lista. © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Templates © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Trabajo con controles Controles de validación Validan la entrada de datos del usuario Reglas definidas de forma declarativa Campo requerido Comparaciones, rangos Expresiones regulares Personalizadas Se ejecutan transparentemente en cliente y servidor Evita roundtrips © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Validación © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Sesión Estado entre peticiones de un mismo cliente Dos tipos Mediante cookie: generada automáticamente ASP.NET_SessionID Cookieless: almacenada en la URL http://server/site/(uqwfp455t2qav155)/default.aspx Accesible mediante Page.Session Diccionario clave / valor © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Sesión (II) El estado de la sesión puede almacenarse: In-process, en el proceso de ASP.NET Out-of-process, en un servidor de estado ASP.NET Out-of-process, en una base de datos SQL Server In-process más óptimo Out-of-process fiabilidad y escalabilidad Sobrevive a caídas Estado compartido entre máquinas de una granja © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Viewstate El Viewstate puede utilizarse como mecanismo genérico de estado Estado entre una petición y la siguiente Características Muy escalable Uso de ancho de banda Útil para datos de pequeña longitud ViewState["color"] = “rojo"; strColor =(string)ViewState["color"]; © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Estado de aplicación Estado compartido entre todos los clientes Accesible mediante Page.Application ¡Cuidado con la concurrencia! Application.Lock antes de actualizar Application.Unlock después de actualizar ¡Cuidado con el rendimiento! Los bloqueos pueden ralentizar No se comparte entre distintos servidores © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Sesión, viewstate y estado de aplicación © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Caché Caché de salida (output caching) Permite reutilizar el resultado de una página entre peticiones Enorme ganancia de rendimiento: páginas cacheadas tan rápidas como las estáticas También para controles de usuario Se cachean las porciones de página que no cambian © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Caché (II) <%@ OutputCache VaryByParam=“XXX“ VaryByHeader=“XXX” VaryByCustom=“XXX” VaryByProperty=“XXX” Duration=“XX" %> VaryByParam Variar por el parámetro especificado VaryByHeader Variar por cabecera (ej. User-agent, lenguaje) VaryByCustom Rutina personalizada VaryByProperty Variar por propiedad del control Duration Duración de caché © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Estado en ASP.NET Caché (III) Caché de datos Permite guardar objetos costosos de generar entre todos los clientes Ej. Consulta a base de datos Accesible desde Page.Cache Los elementos son eliminados teniendo en cuenta: La memoria disponible Prioridades Expiración absoluta o relativa Dependencias © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Caché © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web Vida de una aplicación Cada directorio virtual de IIS es una aplicación Por defecto todas funcionan en el mismo proceso Aisladas con Application Domains Eventos de aplicación Localizados en global.asax Application_Start, Application_End Session_Start, Session_End BeginRequest, EndRequest © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web Pipeline de una petición Los módulos permiten procesamiento adicional por petición Clases que implememtan IHttpModule Configurables en .config Por defecto Sesión, Caché, Autenticación, Autorización Finalmente la petición es atendida por un handler Clases que implementan IHttpHandler Por defecto .aspx asociado al handler Page HttpRuntime HttpApplication Module Handler Factory Handler © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web Despliegue de una aplicación Despliegue XCOPY Es posible sobrescribir una aplicación en caliente Incluyendo páginas y librerías ASP.NET redirige las peticiones a la nueva aplicación y concluye las actuales en la antigua Despliegue Windows Installer Ficheros MSI generados desde Visual Studio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web Configuración 4 niveles para configurar Servidor, root, web, subdir Ficheros XML web.config Extensible Opciones de usuario en <appsettings> Nuevas estructuras XML Modificable en caliente Recarga automática de aplicación Root Dir Web.Config Sub Dir1 Sub Dir2 © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Aplicaciones web Configuración (II) debug="true" para añadir información de depuración en la compilación. Habilita página de error con información detallada. Controla políticas de autorización y autenticación específicas de ASP.NET. Habilita la funcionalidad ASP.NET tracing en la aplicación. Permite la configuración la gestión de estado ASP.NET. © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Configuración de trazas © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación Proceso de validación de credenciales Dos niveles de seguridad IIS: configuración en la administración IIS ASP.NET: configuración en web.config © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación IIS Método Nivel de seguridad Descripción Anónimo Ninguno No se realiza autenticación Básica Baja (media con SSL) Se envía usuario y clave en texto claro Debe ser cifrado con SSL Soportado por la mayoría de browsers Digest Media Envía hash del password Requiere IE 5+ Requiere Directorio Activo Certificados digitales Alta El cliente presenta un certificado X509 Requiere despliegue del certificado Soportado por la mayoría de browsers Integrada con Windows Alta Usa NTLM o Kerberos Pensada para Intranets No funciona a través de un firewall © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación IIS Configuración Configurar IIS en el modo elegido Utilizar mode = “Windows” en web.config <system.web> <authentication mode=“Windows”/> </system.web> Opcionalmente utilizar impersonación <identity impersonate=“true”> © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación ASP.NET Basada en formulario Página web de inicio de sesión Cookie de autorización Configuración Configurar IIS como anónimo Añadir sección en web.config <system.web> <authentication mode=“Forms”> <forms loginUrl=“login.aspx” name=“mycookie”/> </authentication> </system.web> © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación ASP.NET IIS ASP.NET No existe cookie Existe cookie Usuario Página protegida Password Submit Cookie © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Autenticación formularios © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autenticación ASP.NET Passport Mecanismo de autenticación centralizado Requiere SDK Requiere clave cifrado (cuenta Passport) El servidor descifra la cookie de passport y accede a la información del usuario El cliente hace la petición Passport.com redirige la petición al servidor inicial, estableciendo una cookie de autenticación © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autorización Confirmación de acceso a recursos por parte de un usuario o rol Cuatro posibilidades De ficheros De URL Declarativa Imperativa © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autorización de ficheros Establecer ACLs directamente en los ficheros Utilizando Windows Explorer Sólo válido para autenticación Windows © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autorización de URL Añadir autorización en web.config <location path=“Webform1.aspx”> <system.web> <authorization> <allow users=“luis, antonio”> <allow roles=“amigos, administradores”> <deny users='?'/> </authorization> </system.web> </location> Comodines *: Todos los usuarios ?: Usuarios anónimos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autorización declarativa Permite autorizar a nivel de clase y método Mediante atributos [PrincipalPermission(SecurityAction.Demand, Authenticated=true)] class Almacen { [PrincipalPermission(SecurityAction.Demand, Role=“Personal")] public int Consultar() { ... } [PrincipalPermission(SecurityAction.Demand, Role="Admins")] public void Modificar() { ... } } © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Seguridad Autorización imperativa Comprobación programática Para tener un grano aún más fino Propiedad Page.User class CuentaCorriente { public int Transferir(decimal cantidad) { if(cantidad > 1000) { if(User.IsInRole(“administrador”)) { // Transferir } © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Autorización © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Desarrollo web para dispositivos © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Desarrollo web para dispositivos Mobile Web Controls Juego de controles ASP.NET pensados para dispositivos móviles Misma infraestructura ASP.NET 100% integrado con Visual Studio © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Desarrollo web para dispositivos Mobile Web Controls (II) Presentación adaptable WML, cHTML, XHTML, HTML, XML Más de 200 navegadores soportados © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Mobile Web Controls © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

Sep Oct Nov Dic Ene Feb Mar Abr May Jun Desarrollo web Webcast teórico Talleres en ciudades Aplicación MSDN Video Webcast práctica 13 Diciembre www.DesarrollaConMSDN.com Código de MSDN Video Calendario Tutoriales Seminarios Artículos Foros Descuento 40% libros © 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.

© 2004 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.