Noções Básicas sobre Segurança de Accesso a Código

Todos os aplicativos que acessam o Common Language Runtime devem interagir em tempo de execução com o sistema de segurança.Quando um aplicativo é executado, ele é avaliado e é fornecido um conjunto de permissões em tempo de execução automaticamente.Dependendo das permissões que o aplicativo recebe, ele é executado corretamente ou gera uma exceção de segurança.As configurações de segurança local em um computador específico, por fim, decida quais permissões código recebe.Como essas configurações podem alterar de computador para computador, você nunca poderá ter certeza que seu código receberá permissões suficientes para executar.Isso é contrário para o mundo do desenvolvimento para não gerenciado, no qual não é necessário se preocupar sobre a permissão do seu código para executar.

Todo desenvolvedor deve estar familiarizado com os seguintes conceitos de segurança de acesso do código para escrever aplicativos efetivos visando o common linguagem tempo de execução:

  • Gravar tipo-código seguro: Para habilitar código para se beneficiar da segurança de acesso do código, você deve usar um compilador gera verificável tipo-código seguro.Para obter mais informações, consulte Gravando verificável fortemente tipado Code.

  • Sintaxe imperativa e declarativa: Interação com o sistema de segurança de tempo de execução é feita usando chamadas de segurança imperativas e declarativas.Chamadas declarativas são executadas usando atributos; imperativas chamadas são realizadas com o uso de novas instâncias de classes em seu código.Algumas chamadas podem ser executadas apenas imperativa, enquanto outros podem ser executados apenas declarativamente.Algumas chamadas podem ser executadas de qualquer maneira.Para obter mais informações, consulte Sintaxe de segurança.

  • Solicitando permissões para seu código: Solicitações são aplicadas para o escopo do assembly, onde seu código informa o tempo de execução sobre permissões de que precisa ser executado ou especificamente não quer.Solicitações de segurança são avaliadas pelo tempo de execução quando seu código é carregado na memória.Solicitações não podem influenciar o tempo de execução para fornecer o código mais permissões do que o tempo de execução seria tenha dado seu código tinha a solicitação não foi feita.No entanto, as solicitações são para informar o tempo de execução sobre as permissões que ele requer para executar seu código usa.Para obter mais informações, consulte Requesting Permissions.

  • Uso seguro classe bibliotecas: Bibliotecas de classe use segurança de acesso do código para especificar as permissões que eles precisam para ser acessado.Você deve estar ciente das permissões necessárias para acesso qualquer biblioteca que usa seu código e make apropriado solicitações em seu código.Para obter mais informações, consulte Usando bibliotecas de classes segura.

Consulte também

Conceitos

Gravando verificável tipo-código seguro

Sintaxe de segurança

Solicitando permissões

Usando Secure classe bibliotecas

Outros recursos

Segurança de Acesso de código