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


<NetFx40_LegacySecurityPolicy> Элемент

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

<configuration>
  <runtime>
    <NetFx40_LegacySecurityPolicy>

Замечание

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

Синтаксис

<NetFx40_LegacySecurityPolicy
   enabled="true|false"/>

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

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

Attributes

Свойство Description
enabled Обязательный атрибут.

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

Атрибут с поддержкой

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

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

Нет.

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

Элемент Description
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-сборок во время.

Замечание

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

Замечание

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

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

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

Example

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

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

См. также