ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Fusion Middlewareの管理
12c (12.1.3)
E56229-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

8 Oracle Fusion MiddlewareでのFIPS 140のサポート

この章では、Oracle Fusion MiddlewareでのFIPS 140のサポートについて説明します。

この章の内容は次のとおりです。

8.1 FIPS標準について

FIPS (Federal Information Processing Standards)は、米国商務省の標準技術局(National Institute of Standards and Technology: NIST)によって発行されている一連の標準で、コンピュータ・システムおよびネットワークのセキュリティを評価するのに使用されます。

FIPS標準の1つであるFIPS 140-2は、機密情報を保護するために暗号化モジュールが満たしている必要があるセキュリティ要件を規定しています。この標準では、暗号化モジュールを使用する可能性のある幅広いアプリケーションおよび環境に対応するために、質的に拡張された4段階のセキュリティレベルが指定されています。


注意:

この章では以降、用語「FIPS 140」はFIPS 140-2標準のことを意味しています。


8.2 Oracle Fusion Middlewareリリース12c (12.1.3)でのFIPS 140について

Oracle Fusion Middlewareリリース12c (12.1.3)では、FIPS 140対応の暗号化ライブラリを使用できます。

FIPS 140モードで動作する機能は、汎用的で製品スイート全体にわたる要求ではありません。それよりはむしろ、関連するOracle Fusion Middleware 12c (12.1.3)製品コンポーネントによってサポートされているシナリオおよびトランザクションの定義済セットに固有のものです。また、認証、許可、機密保護、整合性など、セキュリティの影響を受けるタスクをサポートまたは実行するために検証済の暗号化が使用される箇所に適用されます。

セキュリティの影響を受けない他のタスクで暗号化サービスを使用する場合は、FIPS 140コンプライアンスに従う必要はありません。Oracle Fusion Middleware 12c (12.1.3)では、セキュリティの影響を受けるシナリオでFIPS 140モードを有効化できると同時に、このモードで動作する必要がない製品機能にも対応して共存することが可能です。

FIPS 140検証済ライブラリについて

FIPS 140動作をサポートするために、Oracle Fusion Middleware 12c (12.1.3)には、RSA, The Security Division of EMC (RSA)のFIPS 140検証済RSAライブラリが組み込まれています。FIPS 140の下で承認されていないアルゴリズムは、RSAライブラリでは無効化されています。

このライブラリは、RSAバージョン6.1 BSAFEおよびJCEソフトウェアを基本にしており、次のモジュールが含まれています。


注意:

これらは、発行時点におけるFIPS 140認証済ライブラリおよびモジュール・バージョンです。ただし、動作保証時から製品の実際の出荷時までの間にベンダーによりパッチが発行されている場合があるため、インストール時に実際に有効なバージョンは、ここで示されているバージョンとは多少異なることがあります。この場合、実際のバージョンは、動作保証されたバージョンのドット・リリースになります。

バージョン番号は単なる参考情報であり、アルゴリズムの動作保証とセキュリティ強度について別個検証を行う必要があります。


FIPS 140標準およびアルゴリズムのバックグラウンドの詳細は、FIPS 140-2ドキュメントを参照してください。

http://csrc.nist.gov/publications/PubsFIPS.html

プロバイダとアルゴリズムの選択

FIPS 140は、JavaプラットフォームのJava暗号化アーキテクチャ(JCA)のコンテキストに従ってOracle Fusion Middlewareに実装されます。セキュリティの影響を受けるタスク用のFIPS 140検証済アルゴリズムと、その他のタスク用のアルゴリズムを共存させるために、FIPS 140検証済RSAライブラリでサポートされていない機能、およびFIPS 140検証済RSAライブラリでは無効化されている特定の非準拠暗号化機能(MD5など)にも対応するように、追加の暗号化プロバイダ・サービスを構成します。

基本的なフローは次のとおりです。

図8-1に、このフローを示します。

図8-1 FIPS 140プロバイダの選択

図8-1については周囲のテキストで説明しています。

このように、FIPS 140に準拠することを目的としたHTTPS/TLSインバウンドおよびアウトバウンド通信などの、セキュリティの影響を受けるシナリオでは、FIPS 140検証済RSAライブラリで使用可能な暗号化機能のみを使用して、HTTPS/TLSネットワーク・ペイロードを暗号化して署名します。

8.3 FIPS 140によりサポートされているコンポーネント

Oracle Fusion MiddlewareでFIPS 140を取り扱う場合は、特定の機能がFIPS 140モードで動作できるようなミドルウェア・スタックの様々なレイヤーにある個別のコンポーネントに注意してください。スタック内のいずれかのコンポーネントが非FIPS 140モードで動作している場合、トランザクションがFIPS 140に準拠していない可能性があります。このため、関連コンポーネントがすべてFIPS 140モードで動作していることを確認することが重要になります。

表8-1に、FIPS 140を有効化できるコンポーネントを一覧表示し、その詳細について説明します。


注意:

一覧表示されている各コンポーネントのすべての機能がFIPS 140に準拠しているとはかぎりません。FIPS 140をサポートしているのは指定された機能のみです。


表8-1 Oracle Fusion MiddlewareでFIPS 140がサポートされているコンポーネント

コンポーネント・レイヤー コンポーネント 機能 詳細

Fusion Middlewareコア

Oracle HTTP Server

  • TLSインバウンド(HTTPS)

  • OHSからWLSへのTLSアウトバウンド

『Oracle HTTP Serverの管理』の次の各項目

  • mod_osslの「SSLFIPS」ディレクティブ

  • 「アプリケーション・セキュリティの管理」


Oracle WebLogic Server

  • TLSインバウンド: HTTPS、T3S、JMX/T3S、JMS

  • TLSアウトバウンド: HTTPS、T3S、JMX/T3S、JMS、JDBC (Oracle RDBMS)

  • データベース接続(データ・ソースを介した)

『Oracle WebLogic Serverのセキュリティの管理』のFIPSモードの有効化に関する項

『Oracle WebLogic Server WebLogic Webサービスの保護』のSHA-256セキュア・ハッシュ・アルゴリズムの使用に関する項

『Oracle WebLogic Server JDBCデータ・ソースの管理』の暗号化済接続プロパティの使用に関する項


Oracle Platform Security Services

  • キーストア・サービス

  • 資格証明ストア・サービス

『Oracle Platform Security Servicesによるアプリケーションの保護』のOPSSでのFIPSのサポートに関する項


Oracle Web Services Manager

  • メッセージ保護

  • トークン署名

『Oracle Web Services ManagerによるWebサービスの保護とポリシーの管理』のサポートされているアルゴリズム・スイートに関する項

データベース

Oracle Database

  • FIPS 140モードでのデータベース

『Oracle Databaseセキュリティ・ガイド』のOracle DatabaseのFIPS 140-2設定に関する項



注意:

データベースは参照用です。サポートされているバージョンおよびその他の詳細は、動作保証マトリックスを参照してください。


8.4 業務系FIPS 140環境の一般的なシナリオ

表8-1では、FIPS 140機能を備えたOracle Fusion Middlewareのコンポーネントを一覧表示しています。表8-2に、コンポーネント・シナリオごとの一般的なプロトコルを一覧表示します。


注意:

これらは代表的なシナリオであり、この表は使用可能なすべてのシナリオの包括的なリストを提供することが目的ではありません。


表8-2 FIPS 140のシナリオ

機能または接続 通信プロトコル 署名アルゴリズムおよびプロトコルの詳細

外部WebクライアントまたはアプリケーションからOracle HTTP Serverへのインバウンド接続

  • HTTPS (OHSへのクライアント・アクセス)

  • SOAP-TLS (サーバー間の通信)

HTTPSサーバー(TLS、相互認証、SHA-256 X.509証明書を備えたRSA-2048、AES-256バルク・データ暗号化)

Oracle HTTP ServerからOracle WebLogic Serverへのアウトバウンド接続

  • OHS内の外部SSL Terminationを備えた端末間SSL用のHTTPS (OHSとWLS内のHTTP Servlet間)

HTTPSクライアント(TLS、相互認証、SHA-256 X.509証明書を備えたRSA-2048、AES-256バルク・データ暗号化)

外部WebクライアントまたはアプリケーションからOracle WebLogic Serverへのインバウンド接続

  • HTTPS (HTTP Servletへのクライアント・アクセス)

  • SOAP-TLS (サーバー間の通信)

HTTPSサーバー(TLS、相互認証、SHA-256 X.509証明書を備えたRSA-2048、AES-256バルク・データ暗号化)

Oracle WebLogic Serverから外部Webサーバー、プロキシ・サーバーまたはアプリケーション・サーバーへのアウトバウンド接続

  • HTTPS (WLSと外部HTTPSサーバー間)

  • SOAP-TLS (サーバー間の通信)

HTTPSクライアント(TLS、相互認証、SHA-256 X.509証明書を備えたRSA-2048、AES-256バルク・データ暗号化)

Oracle WebLogic ServerからOracle Database 11gR2へのアウトバウンド接続

  • DB-TLS-jdbc (WebLogicとデータベース間の通信)

JDBC (TLS、相互認証、SHA-256 X.509証明書を備えたRSA-2048、AES-256バルク・データ暗号化)

Oracle Web Services Managerを使用したSOAPメッセージ用のXMLメッセージ保護(XML署名)

  • SOAP-MsgSec

XML署名(Basic256Sha256、Basic256Sha256Rsa15)、全文、SwA添付を含む

Oracle Web Services Managerを使用したSOAPメッセージ用のXMLメッセージ保護(XML暗号化)

  • SOAP-MsgSec

XML署名(Basic256Sha256、Basic256Sha256Rsa15)、全文、SwA添付を含む

Oracle WebLogic ServerへのインバウンドJMS接続

  • 通信中のJMSトラフィックはセキュア

JMS/TLS

Oracle WebLogic ServerからのアウトバウンドJMS接続

  • 通信中のJMSトラフィックはセキュア

JMS/TLS

デプロイ済コンポーネントからのセキュアなJNDI参照

  • JDNI-EJB

T3S




サーバーへのセキュアな管理者アクセス

  • WLSサーバーへ通信中のWLSTトラフィックはセキュア

T3S

キーストアおよび証明書の生成

  • 暗号化

  • 鍵の交換

RSA 2048、AES 256、SHA-2

ハッシング・アルゴリズム、パスワードベースの暗号化

  • ハッシング

  • 暗号化

SHA-2



注意:

特に指示のないかぎり、すべてのコンポーネント・サーバーはリリース12c (12.1.3)です。


8.5 FIPS 140問題のトラブルシューティング

この項では、FIPS 140構成で発生した問題をトラブルシューティングする方法について説明します。内容は次のとおりです。

8.5.1 スタンドアロンWebLogic ServerにおけるFIPS 140のトラブルシューティング

スタンドアロンOracle WebLogic ServerでFIPS 140モードをトラブルシューティングするには、次の手順を実行します。

WebLogic Serverの構成時

  1. jcmFIPS.jarおよびsslj.jarの先頭にサーバーのCLASSPATHが付加されていることを確認します。

  2. *AES_256*暗号スイートを明示的に検証するために、JAVA_HOME/jre/lib/securityディレクトリにあるlocal_policy.jarおよびUS_export_policy.jarを、セキュリティ強度制限のない対応するファイルで更新します。

  3. リストの上部にsecurity.provider.1=com.rsa.jsafe.provider.JsafeJCEおよびsecurity.provider.2=com.rsa.jsse.JsseProviderを追加して、JAVA_HOME/jre/lib/security/java.securityを変更します。

データ・ソースの構成時

DataSourceプロパティoracle.net.ssl_versionの値が1.0に設定されていることを確認します。

注意: oracle.net.ssl_versionは、オプションのOracle WebLogic Server DataSource構成プロパティです。値1.0は、TLS v1.0プロトコルを介して接続されていることを示します。

8.5.2 Oracle Platform Security ServicesにおけるFIPS 140のトラブルシューティング

この項では、Oracle Platform Security Services (OPSS)におけるいくつかのトラブルシューティングのヒントについて説明します。

WebLogicドメインの作成時

FIPS 140モードでのドメインの作成時に、wlsconfig_xxxxx.logに次の例外が表示される場合があります。

"CFGFWK-60455: The password
must be at least 8 alphanumeric characters with at least one number or
special character."
 
"Caused by: java.lang.NoSuchMethodError:
com.rsa.jsafe.JSAFE_SecretKey.generateInit([ILjava/security/SecureRandom;)"

この例外は、cryptoJ 5 jarを使用している場合に発生することがあります。このエラーを回避するために、cryptoJ 6 jarを備えたOracle WebLogic Serverがインストールされていることを確認してください。

ドメイン・キーストアからのエクスポート時

FIPS 140対応のドメインでJKSおよびJCEKSタイプのキーストアを使用している場合は、次のエラーが表示されます。

Command FAILED, Reason:
 oracle.security.jps.service.keystore.KeyStoreServiceException: Failed to export the keystore 

この場合は、java.securityファイルで次のプロバイダが構成されていることを確認してください。

sun.security.provider.Sun
com.sun.crypto.provider.SunJCE

8.5.3 Oracle Web Services ManagerにおけるFIPS 140のトラブルシューティング

この項では、Oracle Web Services Managerで発生する問題に関するヒントについて説明します。

メッセージ保護ポリシー実行時

Oracle Web Services Managerでメッセージ保護ポリシー実行時にこのエラーが表示される場合があります。

Caused by: java.lang.SecurityException: Algorithm not allowable in FIPS140 mode: MD5
       at com.rsa.cryptoj.o.cc.b(Unknown Source)
       at com.rsa.cryptoj.o.cc.f(Unknown Source)

この場合は、メッセージ保護実行時に使用されている証明書が、SHA1WithRSAやSHA256WithRSAなどのFIPS 140に準拠したアルゴリズムを使用して生成されていることを確認してください。

メッセージ保護ポリシー実行時に、JKSキーストアに対してこのエラーが表示される場合があります。

oracle.fabric.common.PolicyEnforcementException: WSM-00143 : Failure creating Java Keystore instance for type JKS.

この場合は、JDKでsun.security.provider.Sunが構成されていることを確認してください。

8.5.4 データベースおよびJDBCドライバにおけるFIPS 140のトラブルシューティング

データベースに関連するデータ・ソースの問題を含む、データベースおよびJDBCドライバのセキュリティ構成の詳細は、Oracle Technology Networkで入手可能なホワイト・ペーパーのOracle JDBCシン・ドライバでのSSLに関する説明を参照してください。

http://www.oracle.com/technetwork/middleware/id-mgmt/documentation/index.html