Como: Analisar problemas com permissões do Assembly usando Caspol. exe

Você pode usar o ferramenta de política de segurança de acesso de código (Caspol. exe) para solucionar problemas que podem causar um assembly para não executar ou acessar recursos protegidos ou executar quando não deveria.

Analisar problemas com um assembly que não é executado

  1. Use o –all e o –resolveperm opções para determinar as permissões de diretiva concede ao assembly:

    caspol –resolveperm de –all arquivo de assembly

    Determinar se o assembly tem o direito de executar, verificando se o sinalizador de execução está definido na SecurityPermission classe. Se o assembly tem direitos de execução, o conjunto de permissões de segurança será irrestrito ou o atributo flags incluirá o sinalizador de execução.

    Se o assembly deve acessar um recurso protegido, (por exemplo, para acessar um disco, criar janelas, gravar no registro e assim por diante), verifique se as permissões apropriadas estão definidas.

  2. Porque as permissões concedidas por níveis de diretiva de empresa, máquina e usuário se cruzam, uma permissão deve ser definida em todos os níveis para um assembly para recebê-lo. Se o assembly não tem permissões suficientes, verifique as permissões concedidas ao assembly em cada nível de diretiva:

    caspol –resolveperm de –enterprise arquivo de assembly

    caspol –resolveperm de –machine arquivo de assembly

    –resolveperm do caspol – User arquivo de assembly

  3. Se o assembly for parte de um grupo de código cuja condição de associação é restritiva demais ou cuja permissão associado definir não tem as permissões necessárias para o assembly de função, o assembly não pode ser executado corretamente. Se as permissões concedidas ao código não forem suficientes, você pode criar um novo grupo de códigos concede o conjunto de permissões necessárias.

    Você também pode modificar o conjunto de permissões associado ou a condição de membro de um dos grupos de código existentes para que o assembly recebe as permissões apropriadas. Para obter mais informações sobre como fazer isso, consulte como: Alterar os grupos de código usando Caspol. exe.

Para analisar um assembly que acessa os recursos protegidos ou executa quando não deveria

  • Se um assembly é executado, mas não deve, ou se um assembly acessa os recursos que ele não deve acessar (como os recursos necessários para criar caixas de diálogo), o assembly provavelmente tem muitas permissões. Use o –resolveperm opção para determinar as permissões concedido ao assembly. Em seguida, use o –resolvegroups opção para determinar qual código grupos ele pertence. Altere as condições de participação ou os conjuntos de permissões associado dos grupos de código associado para limitar as permissões concedidas ao assembly.

Consulte também

Referência

Caspol. exe (Code Access Security Policy Tool)

Conceitos

Modelo de diretiva de segurança

Outros recursos

Configurando a diretiva de segurança usando Code Access Security Policy Tool (Caspol. exe)

Resolvendo problemas de diretiva de segurança usando Caspol. exe