FIPS 140-2 コンプライアンスサポート

Mule 4 Runtime は、FIPS 140-2 認証済み環境で実行するように設定できます。これには、HTTP コネクタなどのすべての Runtime コネクタを含みます。Mule は、デフォルトでは FIPS セキュリティモードで実行されません。2 つの要件があります。

  • 認証済みの暗号化モジュールが Java 環境にインストールされている。

  • Mule Runtime の設定が FIPS セキュリティモードで実行されるように調整されている。

前提条件

このドキュメントは、読者が FIPS 140-2 に精通していることを前提としています。FIPS 140-2 は、米国政府のセキュリティ標準で、準拠者は NIST によって認証された暗号化アルゴリズムおよび手法のみを使用することが求められます。このドキュメントは、読者が 認証済みセキュリティプロバイダを選択、取得済みであることも前提としています。

FIPS 140-2 Java 環境のセットアップ

Mule は、FIPS に準拠するセキュリティモジュールの提供を Java ランタイムに依存しています。そのため、最初の要件は、FIPS 140-2 Java 環境が適切にセットアップされていることです。FIPS に準拠するシステムを初めてセットアップしていて、認証済みセキュリティプロバイダをまだ設定していない場合は、まず 認証済みセキュリティプロバイダを選択して取得してから、選択したプロバイダに固有の手順に従って Java 環境をセットアップする必要があります。

このプロセスの詳細は、選択したセキュリティプロバイダによって異なります。セキュリティプロバイダのドキュメントを参照して手順を実行してください。

例: Bouncy Castle セキュリティプロバイダを使用したセットアップ手順

次の例は、Bouncy Castle セキュリティプロバイダをインストールして設定する方法を示しています。

  1. BouncyCastle の Web ページからプロバイダファイルをダウンロードします。

  2. 必要な JAR ファイルを $JAVA_HOME/lib/ext フォルダにインストールします。

    FIPS-install-jars
  3. セキュリティプロバイダを、$JAVA_HOME/lib/security フォルダのセキュリティプロパティファイルに登録します。

    1. java.security ファイルを開き、プロバイダのクラス (org.bouncycastle.jcajce.provider.BouncyCastleFipsProvider など) をプロバイダリストの最初の項目として追加します。

    2. SSL プロバイダの行を Bouncy Castle プロバイダを使用するように変更します (security.provider.4=com.sun.net.ssl.internal.ssl.Provider BCFIPS)。

      FIPS-register-jar
  4. 他のセキュリティプロバイダの番号を調整して、番号が連続するようにします。

    FIPS-register-jar-renumber
  5. 変更を保存します。

FIPS セキュリティモードでの Mule の実行

FIPS 140-2 Java 環境のセットアップ の手順に従った後に、Mule インスタンスが FIPS 140-2 準拠環境で動作するようにセットアップするために、Mule アプリケーションサーバを起動するラッパーの設定を更新します。

  1. wrapper.conf ファイルを開きます ($MULE_HOME/conf フォルダ内)。

  2. Mule が FIPS セキュリティモードで動作するように設定する行のコメントを解除します (図を参照)。<n>wrapper.conf ファイル内の連続する次の番号に置き換えます。

    FIPS-wrapper-conf-edit
  3. 変更を保存します。

Mule がもう一度起動すると、起動時の表示に FIPS セキュリティモードが有効になっていることが示されます。

FIPS-startup

FIPS セキュリティモードが有効になると、Mule では自動的にプロトコルネゴシエーションが制限され、承認された暗号化スイートのサブセットのみが使用されます。すべての HTTPS コネクタと TLS セキュリティレイヤを使用するその他のコネクタは、自動的にこの制限の影響を受けます。

SSL コネクタの微調整

Mule conf フォルダには、SSL コネクタの設定を微調整するための 2 つのファイルがあります。これらのファイルでは、Mule が使用できる暗号化スイートと許可される SSL プロトコルを手動で設定できます。

  • tls-default.conf (Mule が FIPS セキュリティモードで実行するように設定されていない場合に微調整できます)

  • tls-fips140-2.conf (Mule が FIPS セキュリティモードで実行されている場合に微調整できます)

該当するファイルを開き、リストの項目をコメントアウトまたはコメント解除して、使用できる暗号化スイートと SSL プロトコルを手動で設定します。これらのファイルを変更しない場合、Mule では、設定されたセキュリティマネージャが暗号化スイートとプロトコルを選択することが許可されます。

ヒントと制限事項

  • Mule Runtime の配布にバンドルされている Bouncy Castle セキュリティプロバイダは、FIPS 認証済みではありません。Mule が FIPS セキュリティモードを開始すると、Bouncy Castle プロバイダは登録されず、使用されません。

  • Mule 暗号化モジュールMule セキュアプロパティの設定オプションに含まれる一部の暗号化スキームと署名は FIPS に準拠していません。アプリケーションで FIPS 認証済みでないアルゴリズムを使用している場合は、実行時に次のようなエラーが表示されます。

	Could not find encryption algorithm '<algorithm-name>'. (暗号化アルゴリズム「<algorithm-name>」が見つかりません。)
	You are running in FIPS mode, so please verify that
	the algorithm is compliant with FIPS. (FIPS モードで実行中です。アルゴリズムが FIPS に準拠していることを確認してください。)
  • 環境によってセキュリティ設定が異なり、暗号化スキームやアルゴリズムの選択も異なる可能性があることに注意してください。そのため、設定方法に応じて、一部の環境でこのエラーが表示され、他の環境では表示されないことがあります。

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub