Cómo: Importar un grupo de código mediante un archivo XML

Es posible que una aplicación requiera que se agregue un grupo de código específico de la aplicación a la directiva de seguridad. La aplicación puede incluir un ensamblado que implementa el nuevo grupo de código y un archivo XML que contiene una serialización del nuevo grupo de código. El archivo XML se puede importar en la directiva de seguridad mediante Caspol.exe (Herramienta de la directiva de seguridad de acceso del código). También es posible que el archivo XML contenga información sobre la condición de pertenencia y el conjunto de permisos asociados al grupo de código. Normalmente, la aplicación satisface la condición de pertenencia especificada y necesita el conjunto de permisos asociado.

En el ejemplo siguiente, se muestra cómo pueden aparecer en un archivo XML la información de un grupo de código y la condición de pertenencia y el conjunto de permisos asociados.

<CodeGroup class="System.Security.Policy.UnionCodeGroup, mscorlib,
           Version=1.0.2411.0, Culture=neutral,
           PublicKeyToken=b77a5c561934e089" version="1"
           Name="myCodeGroup"
           Description="test code group">
   <IMembershipCondition class="MyCustomMembershipCondition, myAssembly,
       Version=1.0.0.0, Culture=neutral,
       PublicKeyToken=b77a5c561934e089" version="1"
       Url="http://www.microsoft.com/"/>
 
   <PermissionSet class="NamedPermissionSet" version="1"
       Name="MyPermissionSet"
       Description="Permission set containing my custom permission">
          <IPermission class="myCustomNamespace.CustomPermission,
             customPerm, Version=0.0.0.0, Culture=neutral,
             PublicKeyToken=64a85a7d791b1a32"  version="1"
             Unrestricted="True"/>
   </PermissionSet>
</CodeGroup>

El elemento <CodeGroup> contiene información para un nuevo grupo de código. Los atributos class y version son obligatorios para el elemento <CodeGroup>. El atributo class apunta a la clase y al ensamblado que implementa el nuevo grupo de código. El valor del atributo class puede tener cualquiera de los formatos descritos en Especificar nombres de tipo completos, pero lo más probable es que aparezca en el formato que se muestra en el ejemplo. Para esta versión de .NET Framework, el atributo version es "1". Los atributos Name y Description pueden ser cualquier cadena válida, y se pueden editar. El atributo Name es el nombre del conjunto de permisos tal como aparece en la herramienta Configuración de .NET Framework.

El elemento <IMembershipCondition> contiene atributos o elementos secundarios que especifican la condición que deben satisfacer los ensamblados para ser miembros del grupo de código y recibir los permisos asociados. El atributo class de <IMembershipCondition> se encuentra en el mismo formato que el atributo class de <CodeGroup>.

Si un elemento <CodeGroup> contiene un elemento <IMembershipCondition> y un elemento <PermissionSet>, la condición de pertenencia y el conjunto de permisos se asocian automáticamente al grupo de código cuando este se importa. Si falta cualquiera de estos elementos, es preciso usar Caspol.exe (Herramienta de la directiva de seguridad de acceso del código) para asociar el elemento que falta al nuevo grupo de código. Para obtener información detallada, vea Cómo: Ver grupos de código mediante Caspol.exe.

¿Te ha resultado útil?
(Caracteres restantes: 1500)
Gracias por sus comentarios

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft