<NetFx40_LegacySecurityPolicy> 要素

ランタイムがレガシ コード アクセス セキュリティ (CAS: Code Access Security) ポリシーを使用するかどうかを指定します。

<NetFx40_LegacySecurityPolicy
   enabled="true|false"/>

属性および要素

以降のセクションでは、属性、子要素、および親要素について説明します。

属性

属性

説明

enabled

必須の属性です。

ランタイムがレガシ CAS ポリシーを使用するかどうかを指定します。

enabled 属性

説明

false

ランタイムはレガシ CAS ポリシーを使用しません。 これは、既定の設定です。

true

ランタイムはレガシ CAS ポリシーを使用します。

子要素

なし。

親要素

要素

説明

configuration

共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。

runtime

ランタイム初期化オプションに関する情報を含んでいます。

解説

.NET Framework Version 3.5 以前のバージョンでは、CAS ポリシーが常に有効になります。 .NET Framework Version 4 では、CAS ポリシーを明示的に有効にする必要があります。

CAS ポリシーはバージョンに固有です。 旧バージョンの .NET Framework に存在するカスタム CAS ポリシーは、.NET Framework 4 では再度指定する必要があります。

<NetFx40_LegacySecurityPolicy> 要素を .NET Framework Version 4 アセンブリに適用しても、透過的セキュリティ コードには影響しません。透過性規則は引き続き適用されます。

重要 :重要

<NetFx40_LegacySecurityPolicy> 要素を適用すると、グローバル アセンブリ キャッシュにインストールされていない、ネイティブ イメージ ジェネレーター (Ngen.exe) で作成されたネイティブ イメージのアセンブリでパフォーマンスが大幅に低下する可能性があります。このパフォーマンスの低下が発生するのは、属性が適用されたときに、ランタイムがアセンブリをネイティブ イメージとして読み込むことができず、結果的に Just-In-Time アセンブリとして読み込まれるためです。

メモメモ

Visual Studio プロジェクトのプロジェクト設定で、対象となる .NET Framework のバージョンとして、.NET Framework 4 より前のバージョンを指定する場合は、そのバージョン用に指定したすべてのカスタム CAS ポリシーを含む CAS ポリシーが有効になります。ただし、.NET Framework 4 の新しい型およびメンバーは使用できません。アプリケーションの構成ファイルでスタートアップ設定スキーマの <supportedRuntime> 要素を使用すると、旧バージョンの .NET Framework を指定することもできます。

メモメモ

構成ファイルの構文では、大文字と小文字が区別されます。構文と例の各セクションで提供されている構文を使用する必要があります。

構成ファイル

この要素は、アプリケーション構成ファイルでのみ使用できます。

使用例

アプリケーションのレガシ CAS ポリシーを有効にする方法を次の例に示します。

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

参照

参照

ランタイム設定スキーマ

その他の技術情報

.NET Framework の構成ファイル スキーマ