Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Criando outras permissões personalizadas

Se você precisa criar uma permissão para proteger um recurso, mas você não quer uma demanda para a sua permissão personalizada para causar um exame de pilha, você deve criar uma permissão que implementa IPermission mas não deriva de CodeAccessPermission. Um exemplo de uma situação em que isso faz sentido é um aplicativo de banco que precisa restringir a capacidade de códigos para executar transações, mas para o qual você não deseja que as permissões de todos os chamadores da pilha sejam verificadas para determinar se eles estão autorizados a executar a transação. Em vez disso, você quer autorização para se basear em se a hora atual do dia entra dentro de um intervalo especificado. Essa situação requer um objeto de permissão personalizado que não é uma permissão de acesso do código personalizado.

Os requisitos para esse tipo de permissão são bastante parecidos com aqueles para uma permissão de acesso de código personalizado. Você deve executar as seguintes etapas para usar uma permissão:

  1. Implementar IPermission.

  2. Implementar ISecurityEncodable para adicionar suporte para codificação e decodificação XML.

  3. Segurança de segurança declarativa definindo um atributo.

  4. Requer a permissão personalizada em uma biblioteca.

Observe que a política de segurança não precisa ser atualizada para incluir permissões de acesso que não sejam permissões de acesso de código. Você não precisa usar a Ferramenta de Diretiva de Segurança de Acesso a Código (Caspol.exe) para ajustar a política de segurança ao usar uma permissão tão hipotética.

Contribuições da comunidade

Mostrar: