24 Oracle Key Vault統合アクセラレータ
Oracle Key Vaultには、ユースケースとKey Vaultの統合を迅速にスピンアップするためのアクセラレータが用意されています。アクセラレータは、提供されたまま使用することも、アプリケーションのニーズにあわせて拡張して使用することもできます。
統合アクセラレータは、Oracle Key Vault管理コンソールからダウンロードできます。Oracle Key Vaultには、次の統合アクセラレータが用意されています:
- Oracle DBMS_CRYPTOのキー管理統合アクセラレータ
リリース21.10以降、Oracle Key Vaultには、Oracle Key VaultでのDBMS_CRYPTO操作で使用される暗号化キーを管理するために、Oracle DBMS_CRYPTOのキー管理統合アクセラレータが用意されています。
Oracle DBMS_CRYPTOのキー管理統合アクセラレータ
リリース21.10以降、Oracle Key Vaultには、Oracle Key VaultでのDBMS_CRYPTO操作で使用される暗号化キーを管理するために、Oracle DBMS_CRYPTOのキー管理統合アクセラレータが用意されています。
Oracle DBMS_CRYPTOパッケージには、暗号化操作と復号化操作を実行するためのPL/SQLインタフェースが用意されています。PL/SQLアプリケーションでは、DBMS_CRYPTO操作で使用される暗号化キーを安全に管理する必要があります。この統合アクセラレータを使用すると、Oracle Key VaultでのOracle DBMS_CRYPTO操作で使用される対称キーを管理できます。この統合アクセラレータ・パッケージには、Oracle Key Vault JAVA SDKプログラム上に構築されたPL/SQLラッパーが用意されています。
- Oracle DBMS_CRYPTOのキー管理統合アクセラレータのダウンロード
Oracle DBMS_CRYPTOのキー管理統合アクセラレータは、Oracle Key Vault管理コンソールからダウンロードできます。 - Oracle DBMS_CRYPTOのキー管理統合アクセラレータの使用
DBMS_CRYPTOのキー管理統合アクセラレータを使用する方法について学習します。
親トピック: Oracle Key Vault統合アクセラレータ
Oracle DBMS_CRYPTOのキー管理統合アクセラレータのダウンロード
Oracle DBMS_CRYPTOのキー管理統合アクセラレータは、Oracle Key Vault管理コンソールからダウンロードできます。
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの使用
DBMS_CRYPTOのキー管理統合アクセラレータを使用する方法について学習します。
- Oracle DBMS_CRYPTOのキー管理統合アクセラレータを使用するための前提条件
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの使用を開始する前に、次の前提条件を満たしていることを確認します。 - Oracle DBMS_CRYPTOのキー管理統合アクセラレータを使用するための環境の準備
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの実行に必要な権限でOracle Database環境を準備していることを確認します。 - PL/SQLアプリケーションでのOracle DBMS_CRYPTOのキー管理統合アクセラレータの使用
PL/SQLアプリケーションで、統合アクセラレータによって提供されるPL/SQLパッケージokv_key_mgmt
を使用できるようになりました。 - Oracle DBMS_CRYPTOのキー管理統合アクセラレータの機能拡張
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの機能をアプリケーションのニーズにあわせて拡張できます。
Oracle DBMS_CRYPTOのキー管理統合アクセラレータを使用するための前提条件
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの使用を開始する前に、次の前提条件を満たしていることを確認します。
-
サンプルOracle DBMS_CRYPTOアプリケーションを実行する予定のOracle Key Vault 21.10以降に、Oracle Databaseをエンドポイントとしてエンロールします。
ノート:
詳細は、「エンドポイントのエンロールとプロビジョニングについて」を参照してください - Java 8以降があることを確認します。
- Oracle Databaseに最新のOracle JVMがパッチ適用されていることを確認します。
-
OKV_HOME
環境変数を適切に設定します。ノート:
$OKV_HOME
は、エンドポイントのインストール時に-d
オプションで指定したエンドポイント・ソフトウェアの宛先ディレクトリです。 okvclient.ora
ファイルが使用可能であり、エンドポイント・エンロールの一部として作成されているかどうかを確認します。okvclient.ora
ファイルは通常、$OKV_HOME/conf/okvclient.ora
にあります。-
okv_jsdk.zip
が$OKV_HOME
に解凍されていることを確認します。Bash UNIXシェルの場合:$ cd $OKV_HOME $ unzip -o okv_jsdk.zip
ノート:
Oracle Key Vault Java SDKのダウンロードの詳細は、『Oracle Key Vault開発者ガイド』を参照してください okv_key_management_dbms_crypto.zip
の内容を別のフォルダに抽出します。okv_key_management_dbms_crypto.zip
ファイルの内容は、次のとおりです:-
setup_java_permissions.sql
: このSQLスクリプトは、データベース内に格納されているリソースにアクセスするために必要なJavaセキュリティ権限およびデータベース権限を設定します。 KeyManager.java
: このプログラムは、Oracle Key Vault Java SDKのAPIを使用して、Oracle Key Vaultサーバーから対称キーを作成およびフェッチします。okv_key_mgmt.pkb
: Oracle Key Vault Java SDK APIを(KeyManager.java
を介して)起動して、Oracle Key Vaultで対称キーの作成およびフェッチ操作を実行するPL/SQLラッパー。dbms_crypto_using_okv_keymgmt.sql
: Java SDKを使用してOracle Key Vaultでのキー管理を示すためのOracle DBMS_CRYPTOのユースケース。README.txt
: サンプルOracle DBMS_CRYPTOアプリケーションを設定および実行する手順。
-
Oracle DBMS_CRYPTOのキー管理統合アクセラレータを使用するための環境の準備
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの実行に必要な権限でOracle Database環境を準備していることを確認します。
PL/SQLアプリケーションでのOracle DBMS_CRYPTOのキー管理統合アクセラレータの使用
PL/SQLアプリケーションで、統合アクセラレータによって提供されるPL/SQLパッケージokv_key_mgmt
を使用できるようになりました。
okv_key_mgmt
パッケージには、キー管理をOracle Key Vaultと統合するための次のファンクションが用意されています。
create_key
: Oracle Key Vaultで対称キーを作成します。これは、Oracle Key Vault Java SDK APIを使用してOracle Key Vaultで対称キーを作成するKeyManager.java:createKey()
をコールするラッパー・ファンクションです。fetch_key
: Oracle Key Vaultから対称キーをフェッチします。これは、Oracle Key Vault Java SDK APIを使用してOracle Key Vaultの対称キーをフェッチするKeyManager.java:fetchKey()
をコールするラッパー・ファンクションです。
okv_key_mgmt
パッケージを使用してOracle Key Vaultからキーをフェッチして使用するように、DBMS_CRYPTOを使用して対称キー・ベースの暗号化操作を実行するPL/SQLアプリケーションを変更できます。このようにして、PL/SQLアプリケーションのキー管理を簡素化できます。
okv_key_mgmt
パッケージのキー管理ファンクションの使用方法を学習するには、統合アクセラレータに付属するサンプル・アプリケーションdbms_crypto_using_okv_keymgmt.sql
を確認します。
DBMS_CRYPTOのキー管理統合アクセラレータ・パッケージに付属するサンプル・アプリケーションdbms_crypto_using_okv_keymgmt.sql
は実行できます。
DBMS_CRYPTOのキー管理統合アクセラレータには、Oracle Key VaultでのPL/SQLアプリケーションのキー管理を示す基本ファンクションが用意されています。提供されているJava SDKプログラムKeyManager.java
およびPL/SQLラッパー・パッケージokv_key_mgmt.pkb
を変更して、より高度な使用方法に対応するようにその機能を拡張できます。
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの機能拡張
Oracle DBMS_CRYPTOのキー管理統合アクセラレータの機能をアプリケーションのニーズにあわせて拡張できます。
使用可能なPL/SQLラッパー・パッケージokv_key_mgmt.pkb
では、キーの作成およびフェッチをそれぞれ実行するための基本ファンクションcreate_key()
およびfetch_key()
のみを提供します。ファンクションfetch_key()
には、入力としてキーの一意の識別子(キーID)が必要です。
多くの場合、わかりやすい名前をキーに関連付ける方が簡単です。その方法では、まずキーの名前を使用してキーを検索し、キーのIDを取得した後、取得したキーIDをfetch_key()
に渡して、DBMS_CRYPTO操作で使用するキーを取得する必要があります。使用可能なcreate_key()
ファンクションは、新しく作成されたキーに関連付ける名前をすでに受け入れています。ただし、キーを名前で検索するファンクションは使用できません。
KeyManager.java
およびPL/SQLラッパー・パッケージokv_key_mgmt.pkb
を変更する必要があります。