Compartilhar via


Como: Importar um grupo de código usando um arquivo XML

Um aplicativo pode exigir que você adicione um grupo de código específico do aplicativo de diretiva de segurança. O aplicativo pode ser fornecido com um assembly que implementa o novo grupo de códigos e um arquivo XML que contém uma serialização do novo grupo de código. O arquivo XML pode ser importado para a política de segurança usando o Caspol. exe (Code Access Security Policy Tool). O arquivo XML também pode conter informações sobre o conjunto de condição e permissão de participação associada ao grupo de código. Normalmente, o aplicativo atende à condição de associação especificado e precisa de permissões associado é definido.

O exemplo a seguir mostra como as informações para um grupo de código e seu conjunto de permissão e a condição de associação associada podem aparecer em um arquivo XML.

Exemplo

<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="https://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>

O <CodeGroup> elemento contém informações para um novo grupo de códigos. O classe e versão atributos são obrigatórios para o <CodeGroup> elemento. O classe atributo pontos para a classe e o assembly que implementa o novo grupo de códigos. O classe valor do atributo pode estar em qualquer formato, discutido no Especificando nomes de tipo totalmente qualificado, mas geralmente será o formulário mostrado no exemplo. Para esta versão do.NET Framework, o versão atributo é "1". O nome e Descrição atributos pode ser qualquer seqüência válida e pode ser editados. O nome atributo é o nome do conjunto de permissões, como ele aparece na.Ferramenta de configuração do NET Framework.

O <IMembershipCondition> elemento contém atributos ou elementos filho que especifique a condição de que os assemblies devem atender para se tornar um membro do código de grupo e recebem suas permissões associadas. O classe atributo para <IMembershipCondition> está no mesmo formato que o classe para o atributo <CodeGroup>.

Se um <CodeGroup> elemento contém um <IMembershipCondition> elemento e uma <PermissionSet> elemento, o conjunto de permissão e a condição de associação são associados automaticamente ao grupo de códigos quando ele é importado. Se qualquer um desses elementos estiverem ausente, você deve usar o Caspol. exe (Code Access Security Policy Tool) para associar o item ausente com o novo grupo de código. Para obter detalhes, consulte:Como: Exibir grupos de código usando Caspol. exe.

Consulte também

Outros recursos

Gerenciamento de política de segurança

Importando componentes de segurança usando arquivos XML