Поделиться через


<> Элемент NetFx40_LegacySecurityPolicy

Указывает, использует ли среда выполнения устаревшую политику разграничения доступа кода.

<Конфигурации>
  <Среды выполнения>
    <NetFx40_LegacySecurityPolicy>

Примечание

Безопасность доступа к коду (CAS) является устаревшей во всех версиях платформа .NET Framework и .NET. В последних версиях .NET заметки CAS не учитываются и при использовании API, связанных с CAS, возникают ошибки. Разработчикам следует искать альтернативные способы выполнения задач безопасности.

Синтаксис

<NetFx40_LegacySecurityPolicy
   enabled="true|false"/>

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут Описание
enabled Обязательный атрибут.

Указывает, использует ли среда выполнения устаревшую политику CAS.

Атрибут enabled

Значение Описание
false Среда выполнения не использует устаревшую политику CAS. Это значение по умолчанию.
true Среда выполнения использует устаревшую политику CAS.

Дочерние элементы

Отсутствует.

Родительские элементы

Элемент Описание
configuration Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework.
runtime Содержит сведения о параметрах инициализации среды выполнения.

Комментарии

В платформа .NET Framework версии 3.5 и более ранних всегда действует политика CAS. В платформа .NET Framework 4 должна быть включена политика cas-доступа.

Политика CAS зависит от версии. Настраиваемые политики CAS, существующие в более ранних версиях платформа .NET Framework, должны быть изменены в платформа .NET Framework 4.

<NetFx40_LegacySecurityPolicy> Применение элемента к сборке платформа .NET Framework 4 не влияет на прозрачный код безопасности; правила прозрачности по-прежнему применяются.

Важно!

<NetFx40_LegacySecurityPolicy> Применение элемента может привести к значительному повышению производительности сборок образов машинного кода, созданных генератором образов машинного кода (Ngen.exe), которые не установлены в глобальном кэше сборок. Снижение производительности вызвано неспособностью среды выполнения загружать сборки в виде собственных образов при применении атрибута, в результате чего они загружаются как JIT-сборки.

Примечание

Если в параметрах проекта Visual Studio указать целевую версию платформа .NET Framework, более раннюю, чем платформа .NET Framework 4, будет включена политика cas-доступа, включая все пользовательские политики CAS, указанные для этой версии. Однако вы не сможете использовать новые платформа .NET Framework 4 типах и членах. Вы также можете указать более раннюю версию платформа .NET Framework с помощью <элемента supportedRuntime> в схеме параметров запуска в файле конфигурации приложения.

Примечание

Синтаксис файла конфигурации учитывает регистр. Следует использовать синтаксис, приведенный в разделах Синтаксис и Пример.

Файл конфигурации

Этот элемент можно использовать только в файле конфигурации приложения.

Пример

В следующем примере показано, как включить устаревшую политику CAS для приложения.

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

См. также раздел