450 likes | 606 Views
Implementar y actualizar aplicaciones .NET. Lo que cubriremos. Problemas históricos con las implementaciones Entender .NET Implementación sin intervención Problemas básicos de seguridad con .NET Framework Proyectos de implementación e instalación de MSI Firmar ensambles de .NET
E N D
Lo que cubriremos • Problemas históricos con las implementaciones • Entender .NET • Implementación sin intervención • Problemas básicos de seguridad con .NET Framework • Proyectos de implementación e instalación de MSI • Firmar ensambles de .NET • Aplicaciones que se auto actualizan con UAB
Conocimiento previo • Familiaridad con la programación de aplicaciones • Experiencia en administrar aplicaciones que se ejecutan en servidores • Familiaridad con la criptografía de llave pública Nivel 200
Agenda • Descripción general de .NET Framework • Implementación sin intervención • Implementación con un archivo MSI • Firmar ensambles de .NET • Actualizar las aplicaciones implementadas
Descripción general de .NET FrameworkProblemas históricos con las implementaciones • Tres problemas principales • Interoperabilidad • Versiones • Independencia del lenguaje • Instalación complicada • Falta de seguridad integrada http://msdn.microsoft.com/library/en-us/dndotnet/html/dplywithnet.asp
Seguridad Compilador Sistema operativo Memoria .NET Framework Bibliotecasbase Descripción general de .NET Framework¿Qué es .NET? Los aspectos básicos de la siguiente generación de los PCs y aplicaciones Web de Windows y servicios Web. Common Language Runtime También consulte Una introducción a Microsoft .NETwww.gotdotnet.com/team/upgrade/dotnet_general.aspx
Código específicode plataforma.NET Descripción general de .NET FrameworkCommon Language Runtime .NET Framework Host en tiempode ejecución Common Language Runtime Aplicación.NET Permisos de seguridad Verificación del código GAC Ensamble .NET Name.dll Verificación del tipo Compilador JIT Ensamble .NET Name.dll
Descripción general de .NET Framework¿Qué es un ensamble? Un ensamble .NET es un conjunto de tipos y recursos integrados para trabajar en conjunto y formar una unidad lógica de funcionalidad. Ensamble .NET Manifesto MSIL Número de ensamble Número de versión Cultura Clave pública Lista de archivos Información sobre la referencia de tipo Información sobre el ensamble alque se hace referencia Código de la aplicación Bibliotecas de códigos Recursos Archivos de texto Archivos de gráficas Iconos
.NET Framework Caché de ensambles global Descripción general de .NET FrameworkCaché de ensambles global La Caché de ensamble global(GAC) es un área de almacenamiento para el ensamble .NET que se puede compartir entre diferentes aplicaciones .NET Políticas obligatorias Almacenamiento de ensambles compartidos Name1.dll Versión 1.0 Name2.dll Versión 1.3 AppA=Name1.dll Versión 1.0 AppB=Name1.dll Versión 2.0 Name3.dll Versión 4.6 Name1.dll Versión 2.0 También consulte Utilizar la utilidad de configuración de Microsoft .NET Framework 1.1http://www.awprofessional.com/articles/article.asp?p=333857
Archivo de configuración Herramienta de Framework Herramientas del SDK de .NET CASPOL.EXE GACUTIL.EXE PERMVIEW.EXE REGASM.EXE SN.EXE Muchas más… Descripción general de .NET FrameworkOpciones de configuración de Framework También consulte Utilizar la utilidad de configuración de Microsoft .NET http://www.awprofessional.com/articles/article.asp?p=333857
demo • Descripción general de .NET Framework • Desmitificar .NET • Examinar la GAC desde Windows Explorer • Examinar la GAC desde el indicador de comandos
Agenda • Descripción general de .NET Framework • Implementación sin intervención • Implementación con un archivo MSI • Firmar ensambles de .NET • Actualizar las aplicaciones implementadas
Implementación sin intervenciónDescripción general • Implemente las aplicaciones.NET Windows a través de HTTP • “Descarga JIT (justo a tiempo)” • Auto actualizaciones con UAB • Principales desventajas • Áreas de seguridad restrictivas • No puede instalar ensambles en la GAC • Por lo general debe estar continuamente en línea Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN),pp. 47-49, 136
Implementación sin intervenciónCómo funciona con Internet Explorer • Ejemplo: http://myserver/myapp.exe • IE 5.01+ escucha los ensambles solicitados • En caso de ser necesario, se pueden descargar los ensambles desde: • C:\windows\assembly\download • Carpeta de Archivos temporales de Internet • La aplicación se inicia en el proceso IE (IEExec) Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN),pp. 47-49
Implementación sin intervenciónProblemas de seguridad con el esquema • La seguridad del acceso del código es la clave • Correlaciona las aplicaciones con el conjunto de permisos • Basada en evidencias • Basada en ubicaciones (sitio / URL / zona?) • Basada en autores (¿Nombre seguro? ¿Quién lo firma?) http://msdn.microsoft.com/library/en-us/dnadvnet/html/Vbnet12112001.asp
Implementación sin intervenciónProblemas de seguridad con el esquema • Los grupos del código se configuran en torno a las zonas IE • Es predeterminado para las confianzas parciales • “Código seguro” de manera inherente • Granular, fácilmente administrable, ampliable • Diseñado para el “menor número de permisos posible” http://msdn.microsoft.com/library/en-us/dnadvnet/html/Vbnet12112001.asp
Implementación sin intervenciónZonas de seguridad y permisos de IE mismo acceso al sitio mismo acceso al sitio mismo acceso al directorio IP numérica o URL con puntos http://www.appdev.com/SmartApps/MyApp.exe http://127.0.0.1/SmartApps/MyApp.exe UNC o URL sin puntos \\CORPSVR\SmartApps\MyApp.exe http://localhost/apps/app1.exe
Implementación sin intervenciónModificar la política de seguridad • Para ensambles o grupo de códigos / zona • Asistente para ajustar la seguridad • Herramientas | Opciones de Internet | Seguridad • Confiar en un Asistente para ensambles • Herramienta de configuración de Framework • Caspol.exe
demo • Implementación sin intervención • Realizar la implementación sin intervención y ejecutar el cliente inteligente • Implementar y ejecutar una actualización • Modificar la política de seguridad • Ejecutar el cliente inteligente en Internet • Utilizar un cargador de aplicaciones
Agenda • Descripción general de .NET Framework • Implementación sin intervención • Implementación con un archivo MSI • Firmar ensambles de .NET • Actualizar las aplicaciones implementadas
Implementación con un archivo MSIDescripción general • Windows Installer crea archivos .msi • Tecnología probada, pero no es la panacea • La mejor opción para la implementación tradicional • Ampliada para respaldar las necesidades de .NET • Visual Studio .NET 2003: • Utiliza Windows Installer 2.0 • Plantillas del proyecto Instalación e Implementación http://msdn.microsoft.com/library/en-us/msi/setup/Descripción general_of_windows_installer.asp
Implementación con un archivo MSIImplementar .NET Framework • Framework no se instala de manera automática • Distribuya utilizando Dotnetfx.exe • No puede incluir un proyecto de instalación de Visual Studio .NET • Opciones de implementación • Instalación manual • Programa previo • Distribución electrónica de software • Active Directory o SMS Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN), pp. 13 y sig.
Implementación con un archivo MSIPersonalizar un MSI Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN), pp. 49 y sig., 76 y sig.
demo • Implementación con un archivo MSI • Modificar el cliente inteligente • Agregar y configurar el Proyecto de instalación • Implementar MSI e instalar el cliente inteligente
Agenda • Descripción general de .NET Framework • Implementación sin intervención • Implementación con un archivo MSI • Firmar ensambles de .NET • Actualizar las aplicaciones implementadas
Firmar ensambles de .NETNombres seguros • Identidad + firma + clave pública • Ofrece tres aspectos • Se requiere para la GAC • No implica nivel de confianza • Condiciones de la membresía Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN), pp. 29 y sig.
Asigne un nombre, versión y cultura (en caso de contar con ella) al ensamble 1 Cree u obtenga un par de claves públicas/privadas (sn.exe) 2 Asocie el ensamble con el archivo de la clave:<AssemblyKeyFile(“c:\SecureStorage\key.snk")> 3 Compile e implemente el ensamble 4 Firmar ensambles de .NETFirmar con un par de claves http://msdn.microsoft.com/library/en-us/cptools/html/cpgrfStrongNameUtilitySNexe.asp
Firmar ensambles de .NETCertificados y Authenticode X.509 • ¿Qué es un certificado X.509? • ¿Qué es Authenticode? • Tecnología del uso de certificados Microsoft • Se basa en los Certificados del editor de software • Ambos se integran en las claves públicas-privadas • CAS puede utilizar certificados como evidencia http://www.verisign.com.au/developer/msauthenticode.shtml
Solicite un certificado de una autoridad que emita certificados. Para fines de la prueba: makecert.exe 1 Genere un Certificado de compañía de software (SPC). Para fines de la prueba: Cert2spc.exe 2 Firme el ensamble final con la clave privada y el SPC (signcode.exe) 3 Firmar ensambles de .NETFirmar con herramientas de Authenticode Para firmar un ensamble con un certificado: http://msdn.microsoft.com/workshop/security/authcode/signing.asp
demo • Firmar ensambles de .NET • Firmar un ensamble con un nombre seguro • Firmar un ensamble utilizando Authenticode
Agenda • Descripción general de .NET Framework • Implementación sin intervención • Implementación con un archivo MSI • Firmar ensambles de .NET • Actualizar las aplicaciones implementadas
Actualizar las aplicaciones implementadasDescripción general de la auto actualización • Facilita su vida laboral • Cuatro desafíos principales • Descubrir las actualizaciones • Descargar las actualizaciones • Mantener la seguridad • Aplicar las actualizaciones Guía sobre el ciclo de vida de la implementación de aplicaciones .NET (MSDN), pp. 135 y sig.
Actualizar las aplicaciones implementadasDescripción general del UAB • Uno de los “patrones y prácticas” de Microsoft • Componentes “Plug-and-play” • Tres configuraciones • Cinco partes funcionales principales UAB para .NET: http://msdn.microsoft.com/library/en-us/dnbda/html/updater.asp y el SDK de UAB
DominioMyApp V1.1 Actualizar las aplicaciones implementadasAuto actualización con el UAB AppStart.exe MyApp MyApp V1 Domain AppStart.exe AppStart.config 1.0 Verifique el manifiesto para actualizaciones HTTP 1.1 Descargue actualizaciones utilizando BITS Web Server
demo • Actualizar las aplicaciones implementadas • Configurar el servidor de implementación • Revisar la aplicación AppStart • Revisar el proyecto de instalación • Implementar, instalar y ejecutar la versión uno • Implementar una actualización
Resumen de la sesión • .NET Framework posibilita la implementación sin intervención • Sin embargo, es deseable utilizar la implementación MSI para los escenarios tradicionales • El UAB es una excelente forma de dar fácilmente a las aplicacionesla capacidad de “auto actualización”
Para mayores informes • Visite TechNet en www.microsoft.com/technet • Para obtener información adicional sobre los libros, los cursos y otros recursos que apoyan esta sesión, visite www.microsoft.com/technet/tnt1-142
Microsoft PressInformación interna para profesionales de informática Para encontrar los títulos más recientes, visite www.microsoft.com/learning/books/
Publicaciones de tercerosComplementarias para los Profesionales de informática Estos libros se pueden encontrar y adquirir en todas las librerías de prestigio y tiendas al menudeo en línea
Microsoft LearningRecursos de capacitación para los Profesionales de informática Para ver el programa detallado o localizar un proveedor de capacitación, visitewww.microsoft.com/learning
Evalúe su preparación con la evaluación de habilidades de Microsoft ¿Qué es la Evaluación de habilidades de Microsoft? • Una herramienta de auto-estudio para evaluar su preparación para las soluciones de productos y tecnología, en lugar de roles de trabajo (certificación) • Windows Server System, Seguridad, Visual Studio .NET, Office 2003 • Gratuita, en línea, sin procuración y disponible para todos • Responde a la pregunta: “¿Estoy listo?” • Determina brechas en habilidades y ofrece planes de estudio con los cursos de Microsoft Official Curriculum • Coloque su calificación más alta para ver en dónde se encuentra • visitewww.microsoft.com/assessment
Conviértase en un Microsoft Certified Systems Administrator (MCSA) • ¿Qué es la certificación MCSA? • Para profesionales de informática que administran y mantienen redes y sistemas basados en Microsoft Windows Server • ¿Cómo me convierto en un MCSA en Windows Server 2003? • Apruebe tres exámenes centrales • Apruebe un examen optativo o dos certificaciones CompTIA • ¿Dónde obtengo más información? www.microsoft.com/mcsa
Suscripciones a TechNet ¿Ya escuchó la noticia? ¡Software sin límites de tiempo!Software completo para evaluación que ofrece más flexibilidad a los suscriptores a TechNet Plus. Soporte técnico sin costo.Dos incidentes de soporte técnico gratuitos incluidos con cada suscripción a TechNet Plus le ahorran tiempo en la resolución de problemas de misión crítica. Tenga a mano los recursos más recientes para evaluar, implementar y dar soporte a las soluciones de se entregan cada mes en CD o DVD, sin tener que depender de conectividad a Internet o firewalls. www.microsoft.com/technet/subscriptions
¿Dónde puedo encontrar ayuda? • Chat y transmisiones Web gratuitas www.microsoft.com/technet/community/chats www.microsoft.com/technet/community/webcasts • Lista de grupos de noticias www.microsoft.com/technet/community/newsgroups • Sitios de la comunidad de Microsoft www.microsoft.com/technet/community • Eventos de la comunidad www.microsoft.com/technet/community/events • Columnas de la comunidad www.microsoft.com/technet/community/columns