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.