Configurar un dominio de aplicación
Configurar un AppDomain proporciona un ambiente personalizado para los Assembly, las modificaciones más importantes y comunes son las de reducir permisos para disminuir vulnerabilidades de seguridad, esto evita que un assembly ejecutado desde un dominio de aplicación pueda realizar acciones maliciosas, debido a un host de evidencia que está proporcionado por una zona de seguridad. En la que la zona de Internet es la más restringida y la zona MyComputer es la menos restringida.
Proporcionar un host de evidencia para un Assembly:
Para controlar los permisos asignados a un Assembly en un AppDomain se pasa un objeto Evidence de System.Security.Policy como parámetro en el método compartido ExecuteAssembly de la clase AppDomain; para construir objeto Evidence se pasa un arreglo de objetos que representa el host de evidencia y el segundo el Assembly de evidencia.
C#
VB.NET
Proporcionar un host de evidencia para AppDomain:
En el ejemplo anterior se asignaba al Assembly los permisos necesarios para una zona de internet, pero también puedes asignarle permisos al AppDomain, pasando como parámetro el objeto Evidence dentro del método compartido CreateDomain() de la clase AppDomain para que todos los Assembly del dominio de aplicación tengan los mismos permisos.
C#
VB.NET
Configurar un AppDomain:
La clase AppDomainSetup es usada para crear propios dominios con alguna configuración en particular, la propiedad más importante de esta clase es ApplicationBase porque obtiene y estable la raíz del directorio contenida en la aplicación, las otras propiedades son usadas para manipular el host en un dominio de aplicación en particular.
Es importante saber que esta clase solo afecta a los dominios de aplicación que se les pasa un objeto de tipo AppDomainSetup como argumento en el método compartido AppDomain.CreateDomain().
C#
VB.NET