10.6 FIPSサポート

JARファイルをインストールして、FIPS 140-2標準をサポートし、JsafeJCEをOracle Databaseのデフォルト暗号化プロバイダにするには、この項で説明するステップを実行してください:

FIPSクラスのインストールとアンインストール

次のコマンドは、Oracle JVMにFIPSクラスをインストールします:

javavm/install/install_fips.sql

次のコマンドは、Oracle JVMからFIPSクラスをアンインストールします:

javavm/install/deinstall_fips.sql

FIPSの有効化

該当するアプリケーションでFIPSを有効にするには、次のようにinsertProviderAt()メソッドをコールする必要があります:

ノート:

暗号化メソッドを呼び出す前に、このメソッドを呼び出す必要があります。
Security.insertProviderAt(new com.rsa.jsafe.provider.JsafeJCE(), 1);

また、このメソッドは、JsafeJCEをアプリケーションの優先プロバイダにします。SYS以外のユーザーの場合は、Security.insertProviderAt()メソッドを実行するために、次の権限があることを確認してください:

call dbms_java.grant_permission( '<schema_name>', 'SYS:java.security.SecurityPermission',
 'insertProvider', '' );

ここで、<schema_name>はFIPSアプリケーションを呼び出すスキーマの名前です。

スクリプトのロード

$ORACLE_HOME/javavm/install/install_fips.sqlスクリプトは、プロバイダのFIPS JAR検証を有効にするために、jcmFIPS.JARファイルの読取り権限を付与します。その後、次のFIPS JARファイルがロードされ、PUBLICシノニムが作成されます:

ORACLE_HOME/jlib/cryptojce.jar
$ORACLE_HOME/jlib/crtpyojcommon.jar
$ORACLE_HOME/jlib/jcmFIPS.jar

ロードの考慮事項

一般的なロード・プロセスでは、次の点に留意する必要があります:

  • すべてのスクリプトは、SYSで実行する必要があります。
  • マルチテナント環境で作業している場合は、最初にjava.security.altファイルをCDB$ROOTにロードする必要があります。CDB$ROOTを構成した後は、必要に応じてPDBをパラレルにロードできます。

マルチテナント環境での作業

次のコマンドを使用して、すべてのコンテナにFIPSクラスをインストールします:

$ORACLE_HOME/rdbms/admin/catcon.pl -u sys/<syspassword> -b install_fips -d $ORACLE_HOME/javavm/install install_fips.sql

ノート:

install_fips[01..].logの形式で、ログ・ファイルが作成されます。ログ・ファイルでエラーを確認する必要があります。

次のコマンドを使用して、特定のPDB (PDB1など)にFIPSクラスをインストールします:

$ORACLE_HOME/rdbms/admin/catcon.pl -u sys/<syspassword> -c 'CDB$ROOT PDB1'
 -b install_fips -d $ORACLE_HOME/javavm/install install_fips.sql

次のコマンドを使用して、すべてのコンテナからFIPSクラスをアンインストールします:

$ORACLE_HOME/rdbms/admin/catcon.pl -u sys/<syspassword> -b deinstall_fips
 -d $ORACLE_HOME/javavm/install deinstall_fips.sql

ノート:

deinstall_fips[01..].logの形式で、ログ・ファイルが作成されます。ログ・ファイルでエラーを確認する必要があります。

次のコマンドを使用して、特定のPDB (PDB1など)からFIPSクラスをアンインストールします:

$ORACLE_HOME/rdbms/admin/catcon.pl -u sys/<syspassword> -c 'PDB1'
 -b deinstall_fips -d $ORACLE_HOME/javavm/install deinstall_fips.sql

ノート:

Oracle JVMからFIPSクラスを完全に削除するには、前述のコマンドの-cリストにCDB$ROOTを追加します。