Determinar los límites del dominio de la aplicación

Actualización: noviembre 2007

Después de que el código de alojamiento realiza la transición desde el código no administrado al código administrado, debe crear uno o varios dominios de aplicación donde se ejecutará el código de usuario. Un dominio de aplicación es una construcción que los hosts utilizan para aislar el código que se ejecuta en un proceso. Este aislamiento es necesario para garantizar que el código que no está destinado a interactuar lo haga. Por ejemplo, el código que se descarga de dos sitios Web diferentes al host de Internet Explorer se deben guardar por separado. El host de Internet Explorer crea un dominio de aplicación para cada sitio para garantizar este aislamiento.

Antes de que un host pueda crear un dominio de aplicación donde se ejecutará el código de usuario, debe determinar dónde están los límites del nuevo dominio de aplicación. Entre los factores que afectan a esta decisión se incluyen los requisitos de limitar el acceso de un tipo determinado a otros tipos, la configuración, la seguridad y la capacidad de descargar código cuando ya no se necesite.

Restringir acceso a los tipos

Un tipo que se ejecuta en un dominio de aplicación puede descubrir los demás tipos que se ejecutan en el dominio y llamarlos directamente. No obstante, un tipo nunca puede descubrir los tipos que se ejecutan en otros dominios de aplicación y, por lo tanto, no puede llamarlos. La capacidad para restringir el acceso de un tipo a otros tipos es una consideración importante a tener en cuenta para determinar dónde se crearán los límites del dominio.

Opciones de configuración

Los dominios de aplicación son las unidades principales de configuración del motor en tiempo de ejecución. Cada dominio de aplicación tiene un archivo de configuración opcional asociado que describe las opciones relativas al código que se ejecuta en el dominio.

Por ejemplo, un archivo de configuración puede contener una lista de directorios donde se encuentran ensamblados privados, información de enlace de la versión para ensamblados compartidos, la ubicación de los tipos de acceso remoto, etc.

Seguridad

Para un dominio, los hosts pueden establecer directivas de seguridad de acceso a código o directivas de seguridad basadas en funciones. Esto permite al host controlar el conjunto de permisos que se concede a un código en un dominio determinado y establecer tanto el principal del subproceso actual como el principal predeterminado de la seguridad basada en funciones.

Por ejemplo, un host podría definir la directiva de seguridad de acceso a código en el nivel de dominio de aplicación para garantizar que en el dominio sólo se pueda ejecutar el código descargado de un sitio determinado. Opcionalmente, un host podría configurar los principales de seguridad basados en funciones para implementar un esquema de autenticación personalizado.

Descarga de códigos

Para descargar de la memoria el código administrado que se ejecuta en un proceso para que la memoria se pueda utilizar con otros fines, el host debe descargar el dominio de aplicación donde se está ejecutando el código. No se pueden descargar ensamblados o tipos individuales. El host tiene sus propias reglas que rigen cuándo se puede descargar el código de usuario. Por ejemplo, el explorador de Internet podría cargar controles administrados en un dominio determinado por el sitio. El explorador podría tener reglas que le permitan guardar en la memoria las últimas páginas visitadas para que los botones Forward y Back respondan más rápidamente. Cuando el explorador determina que una página ya no se necesita en la memoria, elimina el dominio de aplicación y, por lo tanto, también elimina el código de los controles administrados.

Vea también

Otros recursos

Alojar Common Language Runtime

Dominios de aplicación