<enforceFIPSPolicy> 要素

暗号化アルゴリズムが連邦情報処理規格 (FIPS: Federal Information Processing Standard) に準拠する必要があるコンピューターの構成要件を強制するかどうかを指定します。

configuration
  runtime
    <enforceFIPSPolicy>

構文

<enforceFIPSPolicy enabled="true|false" />  

属性および要素

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

属性

属性 説明
enabled 必須の属性です。

暗号化アルゴリズムが FIPS に準拠している必要があるとするコンピューター構成要件の適用を有効にするかどうかを指定します。

enabled 属性

[値] 説明
true 暗号化アルゴリズムが FIPS に準拠するようにコンピューターが構成されている場合は、その要件が適用されます。 クラスで FIPS に準拠していないアルゴリズムが実装されている場合、そのクラスのコンストラクターまたは Create メソッドは、そのコンピューターで実行されたときに例外をスローします。 既定値です。
false アプリケーションで使用される暗号化アルゴリズムは、コンピューターの構成に関係なく、FIPS に準拠している必要はありません。

子要素

なし。

親要素

要素 説明
configuration 共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。
runtime アセンブリのバインディングとガベージ コレクションに関する情報が含まれています。

解説

.NET Framework 2.0 以降では、暗号化アルゴリズムを実装するクラスの作成は、コンピューターの構成によって制御されます。 アルゴリズムが FIPS に準拠している必要があるようにコンピューターが構成されており、クラスで FIPS に準拠していないアルゴリズムを実装している場合、そのクラスのインスタンスを作成しようとすると、例外がスローされます。 コンストラクターでは例外 InvalidOperationException をスローし、Create メソッドでは内部例外 InvalidOperationException を使用して例外 TargetInvocationException をスローします。

FIPS に準拠している必要がある構成のコンピューターでアプリケーションを実行していて、アプリケーションで FIPS に準拠していないアルゴリズムを使用している場合は、構成ファイルでこの要素を使用して、共通言語ランタイム (CLR) が FIPS 準拠を強制しないようにすることができます。 この要素は、.NET Framework 2.0 Service Pack 1 で導入されました。

次の例では、CLR が FIPS 準拠を強制しないようにする方法を示します。

<configuration>  
    <runtime>  
        <enforceFIPSPolicy enabled="false"/>  
    </runtime>  
</configuration>  

関連項目