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
を追加します。