Elemento <NetFx40_LegacySecurityPolicy>

Especifica se o runtime usa a política de CAS (Segurança de Acesso do Código) herdada.

<configuração>
  <runtime>
    <NetFx40_LegacySecurityPolicy>

Observação

O CAS (Segurança de Acesso do Código) foi preterido em todas as versões do .NET Framework e do .NET. As versões recentes do .NET não aceitam anotações de CAS e produzem erros caso as APIs relacionadas ao CAS sejam usadas. Os desenvolvedores devem buscar meios alternativos de realizar tarefas de segurança.

Syntax

<NetFx40_LegacySecurityPolicy
   enabled="true|false"/>

Atributos e elementos

As seções a seguir descrevem atributos, elementos filho e elementos pai.

Atributos

Atributo Descrição
enabled Atributo obrigatório.

Especifica se o tempo de execução usa a política CAS herdada.

Atributo habilitado

Valor Descrição
false O tempo de execução não usa a política CAS herdada. Esse é o padrão.
true O tempo de execução usa a política CAS herdada.

Elementos filho

Nenhum.

Elementos pai

Elemento Descrição
configuration O elemento raiz em cada arquivo de configuração usado pelos aplicativos do Common Language Runtime e .NET Framework.
runtime Contém informações sobre opções de inicialização do runtime.

Comentários

No .NET Framework versão 3.5 e versões anteriores, a política CAS está sempre em vigor. No .NET Framework 4, a política CAS deve ser habilitada.

A política do CAS é específica da versão. As políticas de CAS personalizadas que existem em versões anteriores do .NET Framework devem ser especificadas novamente no .NET Framework 4.

A aplicação do elemento <NetFx40_LegacySecurityPolicy> a um assembly .NET Framework 4 não afeta o código transparente de segurança; as regras de transparência ainda se aplicam.

Importante

A aplicação do elemento <NetFx40_LegacySecurityPolicy> pode resultar em penalidades de desempenho significativas para assemblies de imagem nativa criados pelo Native Image Generator (Ngen.exe) que não estão instalados no cache de assembly global. A degradação do desempenho é causada pela incapacidade do runtime de carregar os assemblies como imagens nativas quando o atributo é aplicado, resultando no carregamento deles como assemblies just-in-time.

Observação

Se você especificar uma versão do .NET Framework de destino anterior ao .NET Framework 4 nas configurações do projeto do Visual Studio, a política CAS será habilitada, incluindo quaisquer políticas CAS personalizadas que você especificou para essa versão. No entanto, você não poderá usar novos tipos e membros do .NET Framework 4. Você também pode especificar uma versão anterior do .NET Framework usando o <elemento supportedRuntime> no esquema de configurações de inicialização em seu arquivo de configuração do aplicativo.

Observação

A sintaxe do arquivo de configuração diferencia maiúsculas de minúsculas. Você deve usar a sintaxe fornecida nas seções Sintaxe e Exemplo.

Arquivo de configuração

Este elemento pode ser usado apenas no arquivo de configuração do aplicativo.

Exemplo

O exemplo a seguir mostra como habilitar a política CAS herdada para um aplicativo.

<configuration>
   <runtime>
      <NetFx40_LegacySecurityPolicy enabled="true"/>
   </runtime>
</configuration>

Confira também