Decidir quando habilitar parcialmente confiável chamadores

O aspecto implícito LinkDemand de confiança total, realizar de bibliotecas compartilhadas por padrão ajuda a fornece seu código um alto nível de proteção, não permitindo que o código não confiável e potencialmente mal-intencionados chamar seu código e explorar pontos fracos. Se você não espera que o seu código será chamado a partir do código parcialmente confiável, você deve considerar deixando o AllowPartiallyTrustedCallersAttribute classe fora de suas bibliotecas compartilhadas.

Observação importanteImportante

No .NET Framework versão 4, o código parcialmente confiável foi redefinido como código transparente.O modelo Transparência desenha uma barreira entre o código que pode fazer coisas privilegiadas (código crítico), como chamar código nativo e código que não é possível (código transparente).Transparência elimina o uso de LinkDemand para identificar código totalmente confiável e afeta as regras para a execução de código parcialmente confiável.Para obter mais informações sobre esta e outras alterações, consulte Alterações de segurança na.NET Framework 4.

Observação

O .NET Framework 4 introduz o uso condicional da AllowPartiallyTrustedCallersAttribute (APTCA) atributo.APTCA condicional permite que os hosts identificar quais assemblies que desejam expor aos chamadores parcialmente confiáveis que são carregados no contexto do host.Os assemblies do candidato já devem ser criados para confiança parcial; ou seja, eles devem ser APCTA (segurança-safe-crítico no modelo Transparência) ou totalmente transparente.Um novo construtor para o AllowPartiallyTrustedCallersAttribute classe permite que o host especificar o nível de visibilidade de um conjunto APTCA, usando o PartialTrustVisibilityLevel enumeração na chamada do construtor.

No entanto, há determinados cenários em que convém a biblioteca compartilhada para ser chamado pelo código parcialmente confiável ou móvel. Por exemplo, aplicativos corporativos talvez queira oferecer suporte a controles gerenciados hospedados no Microsoft Internet Explorer que executam sites da Web em uma intranet local. O AllowPartiallyTrustedCallersAttribute atributo deve ser aplicado somente depois de ter considerado as implicações de segurança e as precauções necessárias, incluindo a revisão de código contra diretrizes de codificação segura para código gerenciado. Este atributo deve ser aplicado aos assemblies somente se os critérios a seguir forem atendidos:

  • O uso do código parcialmente confiável é importante para dar suporte.

  • Os assemblies foram projetados e construídos com atenção explícita para considerações de segurança para torná-los robusta contra todos os chamadores, incluindo os chamadores potencialmente mal-intencionados.

  • Teste com código parcialmente confiável de segurança apropriados é feita antes de liberar o código.

Consulte também

Conceitos

Segurança de Acesso de código

Usando bibliotecas de código parcialmente confiáveis