Las aplicaciones que omiten los ensamblados aislados proporcionados de forma global por distintos servicios pueden ser vulnerables ante problemas ya corregidos por actualizaciones de software de Microsoft

Seleccione idioma Seleccione idioma
Id. de artículo: 835322 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

INTRODUCCIÓN

En los equipos basados en Microsoft Windows Server 2003, los administradores pueden omitir cualquier ensamblado aislado proporcionado de forma global para una aplicación específica. En los equipos basados en Microsoft Windows XP, los programadores y administradores de software pueden omitir cualquier ensamblado aislado proporcionado de forma global para una aplicación específica. Sin embargo, esta característica de omisión puede hacer vulnerable a la aplicación ante problemas que deberían estar corregidos al instalar una actualización de software global de Microsoft. Por lo tanto, recomendamos que los programadores y administradores de software no utilicen esta característica.

Recomendamos que no utilice ensamblados aislados combinados con la redirección DLL/COM de la técnica de Windows. Consulte la sección "Más información" para obtener más detalles.

Más información

Un ensamblado aislado contiene una colección de recursos que pueden incluir uno o varios archivos DLL, clases de ventanas, servidores COM, bibliotecas de tipos o interfaces. Estos recursos se proporcionan a las aplicaciones siempre juntos. Un ensamblado aislado lo selecciona un manifiesto de aplicación XML que puede existir en cualquiera de las siguientes ubicaciones:
  • Un recurso del archivo ejecutable de la aplicación.
  • Un archivo con extensión ".exe.manifest" instalado en la misma carpeta que el archivo ejecutable de la aplicación.
  • Un valor de configuración de la base de datos de compatibilidad de aplicaciones de Microsoft. Si la base de datos de compatibilidad de aplicaciones de Microsoft proporciona un manifiesto de aplicación, éste tendrá precedencia sobre lo que proporcione la aplicación.
Tras la implementación, los programadores o administradores de software pueden actualizar la configuración del ensamblado para cada aplicación utilizando un archivo de configuración de aplicación. Un archivo de configuración de aplicación es un archivo con extensión ".exe.config" que se encuentra en la misma carpeta que el archivo ejecutable de la aplicación. Este archivo se puede utilizar para redirigir una aplicación específica desde el uso de una versión de un ensamblado aislado al uso de otra versión del mismo ensamblado, sin que haya que volver a compilar la aplicación. Por ejemplo, un administrador o un programador puede actualizar una aplicación individual para que utilice un ensamblado individual más reciente que no se forzó en todas las aplicaciones utilizando una directiva del editor. La versión más reciente del ensamblado individual reemplaza a las versiones anteriores del ensamblado para la aplicación especificada.

Además, un administrador de Windows Server 2003, o un administrador o programador de software de Windows XP, puede omitir cualquier ensamblado actualizado globalmente para una aplicación específica, en vez de quitarlo de todas la aplicaciones. Para ello, el administrador puede actualizar el archivo de configuración de la aplicación para incluir un elemento <publisherPolicy apply="no"/>.

Para saber si se está usando un archivo de configuración de aplicación para omitir los ensamblados individuales actualizados globalmente para una aplicación específica en un equipo basado en Windows XP, compruebe el elemento <publisherPolicy apply="no"/>, incluido en un archivo .config con el mismo nombre de archivo que el ejecutable de la aplicación. Por ejemplo, compruebe el elemento <publisherPolicy apply="no"/> del archivo Application.exe.configpara saber si se están omitiendo los ensamblados aislados actualizados globalmente para una aplicación que utilice Application.exe como archivo ejecutable. Este archivo Application.exe.config se instala en la misma ubicación que el manifiesto de la aplicación.

Esta característica permite que los programadores y administradores de software deshabiliten de forma selectiva una actualización de software de Microsoft para una aplicación específica que no funcione correctamente al instalar la actualización de software. (Por lo tanto, los programadores y administradores de software no necesitan quitar la actualización de software para todas las aplicaciones.) Sin embargo, si la aplicación incluye dicha omisión, puede resultar vulnerable a cualquier problema corregido por la actualización de software.

Nota: esta omisión requiere una entrada en la base de datos de compatibilidad de aplicaciones de Microsoft en los equipos basados en Windows Server 2003. Esta configuración sólo pueden agregarla los administradores o una actualización de software de Microsoft.

Existen métodos adicionales en los que el autor de la aplicación o alguien con control sobre el directorio de la misma, puede omitir la actualización global.

Precaución al utilizar la redirección DLL/COM de la técnica de Windows

Normalmente esta técnica llama a un archivo .local para implementarse con la aplicación. Este requisito ayuda a reducir los problemas de compatibilidad de la aplicación.

Nota: el archivo .local hace que el sistema prefiera la copia de los archivos DLL de la carpeta de la aplicación, en lugar de la copia global, que puede ser una actualización de servicio valiosa. Recomendamos que los programadores y administradores de software no utilicen esta característica, o la utilicen con precaución, cuando la aplicación usa un ensamblado aislado.

Para obtener más información sobre la redirección DLL/COM de la técnica de Windows, visite el siguiente sitio Web de Microsoft:
http://msdn2.microsoft.com/en-us/library/aa375142.aspx


Procedimientos recomendados para programadores de software que utilizan ensamblados aislados
  • Incluya la aplicación en un manifiesto de aplicación que enumere la versión del ensamblado aislado con la que la aplicación se ha creado o probado.
  • Implemente siempre el archivo de manifiesto del ensamblado aislado con las DLL aisladas, incluso si elige implementarlo en la carpeta de aplicación.
  • Si instala la aplicación en un equipo que está ejecutando Microsoft Windows 2000 o versiones anteriores de Windows, no incluya el ensamblado aislado en la carpeta de aplicación para dichos sistemas operativos. En su lugar, los ensamblados aislados deberían utilizarse desde la carpeta del sistema.
  • No utilice la característica .local, también denominada redirección DLL/COM de Windows.
  • No ejecute la función LoadLibrary en las DLL del ensamblado aislado con una ruta completa explícita. En su lugar, utilice un vínculo estático o la función LoadLibrary con un único nombre de archivo de la DLL. Por ejemplo, utilice ?Gdiplus.dll? como nombre de archivo.
Para obtener más información, visite el siguiente sitio Web de Microsoft:
http://msdn2.microsoft.com/en-us/library/ms997620.aspx

Referencias

Si desea más información sobre aplicaciones y ensamblados aislados, visite el siguiente sitio Web de Microsoft:
http://msdn2.microsoft.com/en-us/library/aa375193.aspx
Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Propiedades

Id. de artículo: 835322 - Última revisión: sábado, 01 de diciembre de 2007 - Versión: 4.3
La información de este artículo se refiere a:
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Media Center Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional x64 Edition
Palabras clave: 
kbinfo kbtshoot kbsecurity kbprb KB835322

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com