プライマリ・コンテンツに移動
Oracle® Key Vault管理者ガイド
リリース12.2 BP11
E76998-09
目次へ移動
目次
索引へ移動
索引

前
次

11 Oracle Key Vaultのユースケース・シナリオ

通常のOracle Key Vaultのユースケースには、セキュリティ・オブジェクトのアップロードおよびダウンロード、オンライン・マスター・キーの使用およびTDE構成済のOracle Databaseが含まれます。TDE直接接続という用語はオンライン・マスター・キーという用語に置き換えられることに注意してください。

11.1 Oracle Walletのアップロードとダウンロード

Oracle Walletを保存および共有するには、それらをKey Vaultにアップロードする必要があります。その後、Key Vaultで新しい仮想ウォレットを作成して、共有する仮想ウォレットにセキュリティ・オブジェクトを追加します。ダウンロードする前に、仮想ウォレットへのエンドポイント・アクセス権を付与する必要があります。

11.1.1 Oracle Walletのアップロードとダウンロードについて

okvutilユーティリティは、エンドポイントでインストールするエンドポイント・ソフトウェアとともにパッケージ化されています。okvutil uploadおよびokvutil downloadコマンドを使用して、Oracle Key Vaultとそのエンドポイントの間でOracle Walletをアップロードおよびダウンロードできます。

Oracle Key Vaultエンドポイント・ソフトウェアでは、個々のセキュリティ・オブジェクトの粒度レベルでOracle Walletを読み取ることができます。そのため、ウォレットの内容は、個々の項目としてアップロードされます。ダウンロード中に、同じセキュリティ・オブジェクトのセットを使用して元のウォレットを再作成するか、別のセキュリティ・オブジェクトのセットを使用して新しいウォレットを作成できます。

パスワード・ベースのウォレットと自動ログイン・ウォレットの両方を、アップロードおよびダウンロードできます。ウォレットの内容は、いずれかのタイプの新しいウォレットに、後でダウンロードできます。たとえば、アップロードされたパスワード保護済ウォレットを自動ログイン・ウォレットとしてダウンロードしたり、アップロードされた自動ログイン・ウォレットをパスワード保護されたウォレットとしてダウンロードしたりできます。

Oracle Key Vaultを使用して、以前アップロードしたOracle Walletのセキュリティ・オブジェクトを含む新しい仮想ウォレットを構成できます。たとえば、以前にアップロードしたOracle Walletに5つの対称キーと3つの不透明オブジェクトが含まれていた場合は、元の5つの対称キーのうち3つと、元の3つの不透明オブジェクトのうちの1つのみから構成される、新しい仮想ウォレットを作成できます。この仮想ウォレットは元のウォレットと同様にダウンロードでき、キーのサブセットのみに対するアクセス権を持つエンドポイントを提供します。このプロセスは、元のウォレットを変更しません。

11.1.2 Oracle Walletのアップロード

Key Vaultへのウォレットのアップロードは、okvutil uploadコマンドで実行されます。ダウンロード・プロセス中にウォレットを再構築できるように、Oracle Wallet内のすべて、セキュリティ・オブジェクトおよびそれらのメタデータがKey Vaultにアップロードされます。Oracle Walletには、通常、TDEマスター・キー、過去のTDEマスター・キー、SSLまたはTLS証明書およびそれらのメタデータ(不透明オブジェクトとしてKey Vaultに格納されます)、ウォレット・メタデータおよび明示的に追加した鍵が含まれます。

Oracle Walletをアップロードする手順:

  1. Oracle WalletがあるサーバーがKey Vaultエンドポイントとしてエンロールされ、プロビジョニングされていることを確認します。
  2. エンドポイントが、使用する仮想ウォレットへのアクセス権を持っていることを確認します。

    エンドポイントは、Oracle Key Vaultの仮想ウォレットに対して読取り、変更、およびウォレット管理アクセス権を持っている必要があります。

  3. okvutil uploadコマンドを実行して、ウォレットをアップロードします。

    次に例を示します。

    okvutil upload -l "/etc/oracle/wallets" -t wallet -g "HRWallet"
    Enter wallet password (<enter> for auto-login): password
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    Upload succeeeded
    

    この例の詳細は次のとおりです。

    • -lは、アップロードするウォレットのディレクトリ場所を指定します。

    • -tはタイプを示します。この場合はOracle Walletです。

    • -gは、このウォレットがステップ2で構成されたKey Vault 仮想ウォレットの一部になるように、その仮想ウォレットを指定します。

    • パスワードには、パスワード保護されたOracle Walletおよびエンドポイント・パスワードの入力が要求されます。

これでアップロードは完了です。他のユーザーおよびエンドポイントと仮想ウォレットを共有できるようになりました。

11.1.3 Oracle Walletのダウンロード

okvutil downloadコマンドを使用して、Oracle Key VaultサーバーからエンドポイントにOracle Walletをダウンロードできます。

Oracle Walletをダウンロードする手順:

  1. エンドポイントが、ダウンロードする仮想ウォレットにおける読取りアクセス権を持っていることを確認します。
  2. okvutil downloadコマンドを実行して、ウォレットをダウンロードします。

    次に例を示します。

    okvutil download -l "/etc/oracle/wallets/orcl/" -t WALLET -g HRWallet
    Enter new wallet password(<enter> for auto-login): Oracle_wallet_password
    Confirm new wallet password: Oracle_wallet_password
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    

    この例の詳細は次のとおりです。

    • -lは、作成されるウォレットの場所です。

    • -tはタイプを示します。この場合はOracle Walletです。

    • -gは、ステップ1で構成されたOracle Key Vault仮想ウォレットを指定します。

    • パスワードには、パスワード保護されたOracle Walletおよびエンドポイント・パスワードの入力が要求されます。

    ウォレットがすでに存在し、-oパラメータを使用して既存のウォレットに上書きしなかった場合は、次のアクションが実行されます。

    • 既存のウォレットの名前は、ewallet.p12.current_timestamp (timestampはEpoch以降の秒数)という形式のバックアップ名に変更されます。

    • 新たにダウンロードされたウォレットにはewallet.p12という名前が付けられます。

  3. Oracle Key VaultからダウンロードしたOracle WalletがTDEウォレットとして使用される場合、ダウンロードの前に既存のウォレットを閉じ、パスワード保護されている場合は、後で開きなおします。(自動ログイン・ウォレットは、次にアクセスしたときに自動的に開かれます。)

    ウォレットを閉じて再び開くと、ウォレットの内容がTDEデータベースにロードされます。

    • Oracle Database 11gリリース2の場合:

      ALTER SYSTEM SET ENCRYPTION WALLET CLOSE IDENTIFIED BY "Oracle_wallet_password"; 
      
      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "Oracle_wallet_password"; 
      
    • Oracle Database 12cの場合:

      ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY "Oracle_wallet_password";
      
      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "Oracle_wallet_password";
      
  4. Oracle RACなどの共有サーバー構成で実行している場合は、データベースを再起動します。

関連項目:

11.1.4 Oracle Walletのアップロードとダウンロードでの推奨事項

Oracle Walletをアップロードおよびダウンロードする場合の推奨事項は、次のとおりです。

  • 元のウォレットの内容に変更がある場合は(キー・ローテーションやキー更新操作など)、Key Vaultにウォレットの最新のコピーが保持されるように、Oracle Key Vaultにウォレットを再アップロードします。

  • okvutil uploadおよびdownloadコマンドには、上書き(-o)オプションがあります。このオプションを指定する場合、アップロードされるデータと競合する仮想ウォレット内のデータが上書きされるため、注意してください。-oオプションを使用する前に、ウォレット・ファイルのローカル・バックアップを作成してください。

  • Oracle Key Vaultサーバー上の複数の仮想ウォレットに対して、同一の物理的なOracle Walletをアップロードしないでください。Oracle Walletを複数のエンドポイントと共有する場合は、エンドポイント・グループを作成します。

11.2 JKSおよびJCEKSキーストアのアップロードとダウンロード

okvutil uploadおよびokvutil downloadコマンドを使用して、JKSおよびJCEKSキーストアをアップロードおよびダウンロードできます。

11.2.1 JKSおよびJCEKSキーストアのアップロードとダウンロードについて

JKSおよびJCEKSキーストアを長期保持、リカバリおよび共有のためにOracle Key Vaultにアップロードし、必要に応じてそれらをエンドポイントにダウンロードできます。

ウォレットと同様に、JKSまたはJCEKSキーストアをアップロードする場合、Oracle Key Vaultはキーストア内の各項目を読み取ることができます。キーストアの内容は、個々の項目としてアップロードされます。

11.2.2 JKSまたはJCEKSキーストアのアップロード

okvutil uploadコマンドを使用して、Oracle Key VaultサーバーにJavaキーストア(JKS)またはJava Cryptography Extensionキーストア(JCEKS)をアップロードできます。

Javaキーストアをアップロードする手順:

  1. JavaキーストアがあるサーバーがKey Vaultエンドポイントとしてエンロールされ、プロビジョニングされていることを確認します。
  2. エンドポイントに対してアクセス制御が構成されていることを確認します。

    キーストアを仮想ウォレットにアップロードする場合、エンドポイントがこのウォレットへの読取り、変更およびウォレット管理アクセス権を持っていることを確認します。

  3. okvutil uploadコマンドを実行して、キーストアをアップロードします。

    次の例に、キーストアを仮想ウォレットにアップロードする方法を示します。

    次の例は、JKSキーストアをアップロードする方法を示しています。

    okvutil upload -l "/etc/oracle/fin_jks.jks" -t JKS -g "FinanceGrp"
    Enter source Java keystore password: Java_keystore_password
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    Upload succeeded
    

    この例の詳細は次のとおりです。

    • -lは、アップロードされるJavaキーストアの場所です。

    • -tは、JKSまたはJCEKSキーストアのタイプです。アップロードおよび後でダウンロードするときは、必ず正しいタイプのJavaキーストアをアップロードしてください。

    • -gは、Javaキーストアの内容のアップロード先となるOracle Key Vaultの仮想ウォレットです。

    • パスワードには、キーストアおよびエンドポイントの入力が要求されます。

    次の例は、JCEKSキーストアをアップロードする方法を示しています。

    okvutil upload -l "/etc/oracle/hr_jceks.jceks" -t JCEKS -g "HRGrp"
    Enter source Java keystore password: password
    Enter Oracle Key Vault endpoint password: password
    Upload succeeded
    

これでアップロードは完了です。必要に応じて、Javaキーストアを共有およびダウンロードする準備が整いました。

関連項目:

11.2.3 JKSまたはJCEKSキーストアのダウンロード

okvutil downloadコマンドを使用して、アップロード済のJKSまたはJCEKSキーストアをダウンロードできます。

Javaキーストアをダウンロードする手順:

  1. エンドポイントが、ダウンロードする仮想ウォレットにおける読取りアクセス権を持っていることを確認します。
  2. エンドポイント管理者として、コマンドラインから、okvutil downloadコマンドを実行してJavaキーストアをダウンロードします。

    次に例を示します。

    okvutil download -l "/etc/oracle/new_java_files/hr_jceks.jceks" -t JCEKS
    Enter new Java keystore password: password
    Confirm new Java keystore password: password
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    

    この例の詳細は次のとおりです。

    • -lは、アップロードされたJavaキーストアをダウンロードするディレクトリです。

    • -tは、JKSまたはJCEKSキーストアのタイプです。必ず正しいタイプのJavaキーストアをダウンロードしてください。

    • パスワードには、キーストアおよびエンドポイント・パスワードの入力が要求されます。

11.2.4 JKSおよびJCEKSキーストアのアップロードおよびダウンロードに関する推奨事項

JKSおよびJCEKSキーストアをアップロードおよびダウンロードする場合の推奨事項は、次のとおりです。

  • 元のJKSまたはJCEKSキーストアの内容に変更がある場合は、Key Vaultにキーストアの最新のコピーが保持されるように、Oracle Key Vaultにキーストアを再アップロードします。

  • okvutil uploadおよびdownloadコマンドには、上書き(-o)オプションがあります。このオプションはファイルを上書きするため、指定する場合は注意してください。キーストアをダウンロードする前に、そのバックアップを作成することをお薦めします。

  • Oracle Key Vaultサーバー上の複数の仮想ウォレットに対して、同一の物理的なJKSまたはJCEKSキーストアをアップロードしないでください。Javaキーストアを複数のエンドポイントと共有する場合は、エンドポイント・グループを作成します。

    関連項目:

    エンドポイント・グループの作成の詳細は、エンドポイント・グループの管理を参照してください。

11.3 資格証明ファイルのアップロードとダウンロード

okvutil uploadおよびokvutil downloadコマンドを使用して、資格証明ファイルをアップロードおよびダウンロードできます。

11.3.1 資格証明ファイルのアップロードとダウンロードについて

資格証明ファイルは、Key Vaultに不透明オブジェクトとしてアップロードおよび保存されますが、これは、Key VaultがOracle WalletまたはJavaキーストアなどのファイルの内容を解析しないことを意味します。アップロード・プロセスでは、資格証明ファイルは変更されません。

不透明オブジェクトの例は、次のとおりです。

  • X.509証明書を含むファイル

  • Kerberosキータブ

  • パスワードを含むファイル

  • SSHキーを含むファイル

これらの資格証明ファイルをアップロードすると、長期保持用の一元的でセキュアな場所が得られます。資格証明ファイルは、アップロードした後で、同じサーバーの場所にダウンロードしたり、他の信頼できるサーバーの場所と共有することができます。Oracle Key Vaultは、最大128 KBのサイズの資格証明ファイルをサポートします。

資格証明ファイルは、Oracle Key Vaultエンドポイントがアクセスできるサーバー・インフラストラクチャ(データベース・サーバーやアプリケーション・サーバーを含む)のどこにでも配置できます。

11.3.2 資格証明ファイルのアップロード

okvutil uploadを使用して資格証明ファイルをアップロードする手順:

  1. 資格証明ファイルがあるサーバーがKey Vaultエンドポイントとしてエンロールされ、プロビジョニングされていることを確認します。
  2. エンドポイントに対してアクセス制御が構成されていることを確認します。

    資格証明ファイルを仮想ウォレットにアップロードする場合、エンドポイントがウォレットへの読取り、変更およびウォレット管理アクセス権を持っていることを確認します。

  3. okvutil uploadコマンドを実行します。

    次に例を示します。

    okvutil upload -l "/etc/oracle/app/creds/hr.keytab" -t kerberos -g HRWallet -d "Kerberos keytab file for HR group, 06_11_14"
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    

    この例の詳細は次のとおりです。

    • -lは、アップロードされるhr.keytab資格証明ファイルのディレクトリ・パスです。ディレクトリの場所は、二重引用符で囲みます。

    • -tは、資格証明ファイルのタイプを指定します。この例ではKerberosキータブ・ファイルです。KERBEROSの他に、指定できるタイプは次のとおりです。

      • SSHキー・ファイルの場合、SSH

      • 機密情報(たとえばアップロードまたはダウンロードされたファイル)が格納されている他のファイルの場合、OTHER

    • -gは、すでに存在するHRWalletグループに資格証明ファイルを追加します。このパラメータを使用すると、デフォルトの仮想ウォレットではなく、HRアプリケーション・ユーザーの必要に応じた専用のウォレットに資格証明をアップロードできます。この例では、HRWalletはKey Vault仮想ウォレットで、そのアクセス制御はステップ2で構成されました。

    • -dは、オプションの説明です。ベスト・プラクティスとしては、資格証明ファイルの使用目的の概要と、アップロードを実行した日付を入れておきます。この情報は、あとで参照し、資格証明ファイルを追跡する助けになります。この説明は、必要に応じて、後からOracle Key Vault管理コンソールで変更できます。

    • パスワード・プロンプト: エンドポイント・パスワードを入力して確認します。

    出力結果は、次のようになります。

    Upload succeeded
    

これでアップロードは完了です。

11.3.3 資格証明ファイルのダウンロード

okvutil downloadを使用して資格証明ファイルをダウンロードする手順:

  1. 次のいずれかの方法を使用して、ダウンロードする必要のある資格証明ファイルの一意のIDを見つけます。
    • Oracle Key Vault管理コンソール: キー管理者ロールを付与されたユーザーまたは仮想ウォレットに必要なアクセス権を持っているユーザーとしてログインします。Oracle Key Vault管理コンソールで、「Keys & Wallets」タブから「All Items」を選択して、アップロードされたファイルを検索します。ダウンロードする、アップロードされたファイルの一意のIDを書き留めます。資格証明ファイルは、不透明オブジェクトとしてリストされます。

    • okvutil list command: 資格証明ファイルへのアクセス権を持つエンドポイント、または資格証明ファイルが含まれている仮想ウォレットから、okvutil listコマンドを実行します。ファイルのアップロード時に入力した説明に基づいて、ダウンロードする必要のある資格証明ファイルの一意のIDを見つけます。

  2. コマンドラインから、okvutil downloadコマンドを実行して、アップロードされた資格証明ファイルをダウンロードします。

    次に例を示します。

    okvutil download -l "/etc/oracle/app/newcreds/hr.keytab" -t kerberos -i 6ba7b810-9dad-11d1-80b4-00c04fd430c8
    Enter Oracle Key Vault endpoint password: Key_Vault_endpoint_password
    

    この例の詳細は次のとおりです。

    • -lは、アップロードされた資格証明をダウンロードするディレクトリです。

    • -tは、資格証明ファイルのタイプを指定します。この例ではKerberosキータブ・ファイルです。KERBEROSの他に、指定できるタイプは次のとおりです。

      • SSHキー・ファイルの場合、SSH

      • 機密情報(たとえばアップロードまたはダウンロードされたファイル)が格納されている他のファイルの場合、OTHER

    • -iは、資格証明ファイルの一意のIDです。

    出力は、次のようになります。

    Download succeeded
    

11.3.4 資格証明ファイルのアップロードとダウンロードでの推奨事項

資格証明ファイルをアップロードおよびダウンロードする場合の推奨事項は、次のとおりです。

  • アップロードの完了後は、資格証明ファイルが次に変更されたときに再アップロードしてください。そうしないと、アップロードされたファイル(およびそれ以降にダウンロードされたバージョン)は最新でないものになります。資格証明ファイルの最終変更日を、アップロードされたバージョンのタイムスタンプと定期的に比較してください。

  • okvutil uploadおよびdownloadコマンドには、上書き(-o)オプションがあります。このオプションは、アップロードした資格証明ファイルを上書きするため、指定する場合は注意してください。アップロードとダウンロードのプロセスを開始する前に、資格証明ファイルのバックアップを作成することをお薦めします。

  • 複数のサーバー・エンドポイント間で、1つの資格証明ファイルを共有できます。仮想ウォレットに不透明オブジェクトを追加し、続いて、すべてのエンドポイントがその仮想ウォレットへのアクセス権を持っていることを確認します。オプションで、エンドポイント・グループを定義し、すべてのサーバー・エンドポイントをそのグループのメンバーにします。okvutil uploadコマンドの-gオプションを使用して、この共通のウォレットを使用して共有する証明書ファイルを、Oracle Key Vaultにグループとしてアップロードします。ウォレットを定義して、それをエンドポイント・グループにアタッチします。グループのすべてのメンバーが、そのウォレットへのアクセス権を持ちます。

11.4 Oracle Key Vaultでのオンライン・マスター・キーの使用

エンドポイントに対する直接接続を実行するようにTransparent Data Encryption (TDE)を構成し、TDEマスター・キーを集中管理できます。

TDE直接接続という用語はオンライン・マスター・キーという用語に置き換えられることに注意してください。

11.4.1 Oracle Key Vaultでのオンライン・マスター・キーの使用について

Oracle Database 11gリリース2 (11.2)以降では、オンライン・マスター・キーを使用することで、ローカルOracle Walletファイルを使用するかわりに、ネットワーク接続を介してTransparent Data Encryption (TDE)マスター・キーを集中管理できます。

接続の構成には、Oracle Key Vaultに接続するPKCS#11ライブラリの使用が含まれます。構成を実行すると、その後のTDEマスター・キーはすべてOracle Key Vaultで格納および管理されます。この項では、使用できる2つのシナリオについて説明します。

  • データベースにTDEウォレットがない場合

  • データベースがTDE向けに構成されている場合

TDEキー管理は、ハードウェア・セキュリティ・モジュール(HSM)との連携と同じように、Oracle Key Vaultと連携動作します。暗号化と復号化の前に、ウォレットを開く必要があります。ウォレットを閉じると、表と表領域にある暗号化データは使用できません。適用される規制に適合した状態を保つため、TDEマスター暗号化キーは定期的にローテーションしてください。

Oracle Key Vaultは、初期のTDEリリースを管理するために使用されるSQL文(特にALTER SYSTEMADMINISTER KEY MANAGEMENT SQL文の使用)をサポートします。

関連項目:

11.4.2 Oracle Key Vaultでサポートされるその他のOracle Database機能

クラスタ化されたデプロイメントを移動または使用する他のデータベース機能とともに、複数のトポロジにTDEをデプロイできます。

両方のエンドポイントのマスター暗号化キーを同期状態に保つ必要があるため、データの移動とレプリケーションはOracle Advanced Security TDEの大きな課題です。これらの課題に対応するため、Oracle Key Vaultは一般的なOracle Database機能をサポートします。

データ移動では、Oracle Key Vaultは次をサポートします。

  • Oracle Recovery Manager (RMAN)のバックアップおよびリカバリ操作

  • Oracle Data Pump

  • トランスポータブル表領域(Oracle Database 12c以降)

クラスタ化デプロイメントでは、Oracle Key Vaultは次をサポートします。

  • Oracle Active Data Guard

  • Oracle Real Application Clusters(Oracle RAC)

  • Oracle GoldenGate

11.4.3 Oracle Key Vaultと新しいTDE対応データベースの間での接続の構成

Oracle Key Vaultと、まだTransparent Data Encryption用に構成されていないデータベースの間の接続を構成できます。

接続の構成を始める前に、Oracle Key Vaultインストール環境がDatabaseランタイム環境と同じであることを確認してください。環境変数ORACLE_HOMEORACLE_BASEおよびORACLE_SID (使用している場合)は、svrctlおよびOS環境の値と同じに設定する必要があります。これは、エンドポイントのエンロールにOracle Key Vault RESTfulサービス・ユーティリティを使用している場合にも該当します。

次のように接続を構成します。

  1. Oracleプロセスを手動で開始する前に、ORACLE_BASE環境変数が設定されていることを確認します。このことは非常に重要です。

    ORACLE_BASE環境変数が存在しない場合は、次のファイルから、

    $ORACLE_BASE/okv/$ORACLE_SID/okvclient.oraファイル

    次のファイルへのソフトリンクを作成します。

    key_vault_endpoint_installation_dir/conf/okvclient.oraファイル

    Oracle Real Application Clusters環境のすべてのデータベース・インスタンスでこのステップを実行します。

    注意:

    SQLNET.ORAでの環境変数の使用の詳細は、この手順の最後の「関連項目」の項を参照してください。

  2. COMPATIBILITY初期化パラメータが11.2.0.0以降に設定されていることを確認します。

  3. TDEデータを含むTDE対応データベース用にエンドポイントをエンロールおよびプロビジョニングします。

    エンドポイントを初期エンロールする場合、TDEとの統合用のエンドポイント・タイプとしてOracle Databaseを選択する必要があります。

  4. エンドポイントが、使用する仮想ウォレットへのアクセス権を持っていることを確認します。

    エンドポイントは、読取り、変更、およびウォレット管理アクセス権を持っている必要があります。

  5. 次のようにして、このデータベースのsqlnet.oraファイルがOracle Key Vaultを指すように構成します。

    ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=HSM))
    

    Transparent Data Encryptionは、Oracle Key Vaultを含むすべての外部キー管理システムのパラメータ値として、HSMを使用します。このため、構成設定や管理コマンドは、HSMで使用されるものと類似しています。

    デフォルトで、sqlnet.oraファイルは、ORACLE_HOME/network/adminディレクトリ、またはTNS_ADMIN環境変数で設定された場所にあります。エンドポイントは、PKCS#11ライブラリ・サポートを使用してTDEマスター暗号化キーを管理します。

    注意:

    この段階では、Oracle Key VaultはTDEを使用でき、すべてのTDE関連のSQL文を使用できます。すべてのTDEコマンドおよび文に、エンドポイント・エンロール・プロセス中に指定されたKey Vaultエンドポイント・パスワードを使用します。

  6. SQL*Plusの場合、データベースに再接続します。

    変更は、現在のSQL*Plusセッションをログアウトし、もう一度再接続してから表示されます。

  7. V$ENCRYPTION_WALLET動的ビューを問い合せて、sqlnet.oraファイル内のMETHOD_DATAの設定が変更されたことを確認します。

    これで、問合せの出力にHSMが表示されます。

    SELECT * FROM V$ENCRYPTION_WALLET;
    
  8. 次のように、TDEを構成してKey Vaultと統合し、Key VaultがTDEマスター・キーを直接管理できるようにします。

    1. UNIXプラットフォームでは、ルート・ユーザーとしてroot.shスクリプトを実行して、liborapkcs.soファイル(libディレクトリ内)を/opt/Oracle/extapi/64/hsm/Oracle/1.0.0ディレクトリにコピーします。

      永続マスター・キー・キャッシュ機能はOracle Key Vault PKCS#11ライブラリに実装され、断続的なネットワークの中断またはOracle Key Vaultのアップグレードの間、データベースの可用性を向上させます。

      デフォルトでは、PKCS#11ライブラリは$OKV_HOME/bin/liborapkcs.soファイルにあります。これをUNIXシステム上の次の場所にコピーします。

      /opt/oracle/extapi/64/hsm/oracle/1.0.0

      Windowsプラットフォームでは、ルート・ユーザーとしてroot.batスクリプトを実行して、liborapkcs.dllファイル(libディレクトリ内)をC:\oracle\extapi\64\hsm\oracle\1.0.0ディレクトリにコピーします。要求に応じてデータベースのバージョンを指定します。

    2. データベース上のパスワード保護されたウォレットの場合は、ウォレットを開きます。(自動ログイン・ウォレットは自動的に開かれます。)

      Oracle Database 11gリリース2の場合は、ALTER SYSTEMシステム権限を付与されたユーザーとして、次を実行します。

      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "Key_Vault_endpoint_password"; 
      

      Oracle Database 12cの場合は、SYSKM管理権限を付与されたユーザーとして、次を実行します。

      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    3. マスター暗号化キーを設定します。

      Oracle Database 11gリリース2の場合:

      ALTER SYSTEM SET ENCRYPTION KEY IDENTIFIED BY "Key_Vault_endpoint_password"; 
      

      Oracle Database 12cの場合:

      ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY IDENTIFIED BY "Key_Vault_endpoint_password";
      

TDE構成はここで完了です。これで、表の暗号化や、データベースへの暗号化された表領域の作成を行うことができます。

残りのTDE構成とともにsqlnet.oraファイルが正しく構成されている場合、次のいずれかのコマンド使用して暗号化鍵を設定すると、TDEマスター・キーがOracle Key Vaultに作成されます。

  • ALTER SYSTEM SET ENCRYPTION KEY

  • または

  • ADMINISTER KEY MANAGEMENT SET ENCRYPTION KEY

TDEエンドポイントの統合の制限事項

TDEエンドポイントの統合の制限事項は次のとおりです。

  • 同じマシン上のすべてのエンドポイントは、同じバージョンのOracle Key Vaultライブラリを使用する必要があります。次に示すように、liborapkcs.soファイルの場所はマシンごとに1つのみです。

    /opt/oracle/expapi/64/hsm/oracle/1.0.0/liborapkcs.so
  • 同じマシン上では、Oracle Databaseに対して同じ外部キー・マネージャ(Oracle Key VaultまたはHSM)を使用するのが最適です。1つのOracle DatabaseにOracle Key Vaultを使用し、別のOracle DatabaseにHSMを使用すると、サブツリーの走査時にOracle Databaseが最初のPKCS#11ライブラリを取得するため、誤ったPKCS#11ライブラリがロードされる可能性があります。

     /opt/oracle/expapi/64/hsm/

注意:

TDEを設定した後はウォレットからキーを削除することや、ウォレット自体を削除することがないようにしてください。キーを失うと暗号化データが失われ、データベースの通常の機能に支障が及びます。これは、次の場合にも該当します。
  • システムに暗号化データがない場合

  • 暗号化されたすべてのデータが復号化されている場合

  • キーとウォレットをハードウェア・セキュリティ・モジュールに移行した場合

関連項目:

11.4.4 既存のTDEウォレットのOracle Key Vaultへの移行

既存のTDEウォレットをOracle Key Vaultに移行し、必要に応じて、TDEによって以前に暗号化されたデータベース内容を、Oracle Walletを使用してリストアできます。

11.4.4.1 既存のTDEウォレットのOracle Key Vaultへの移行について

TDEウォレットがすでに存在する場合は、Oracle Key Vaultを認識するようにsqlnet.oraファイルを変更してから、既存のTDEウォレットをKey Vaultに移行する必要があります。

Oracle Walletは、現在のTDEマスター・キーとともに、TDEマスター・キーをローテーションさせる毎回のキー更新操作によって上書きされた、過去のTDEマスター・キーを保持しています。この過去のTDEマスター・キーは、過去のTDEマスター・キーの1つを使用して作成されたOracle Databaseバックアップをリストアする際に助けになります。Oracle WalletファイルからOracle Key VaultへのTDE移行の際、Key Vaultは新しいマスター・キーを生成します。このマスター・キー生成の後は、Oracle Key Vaultがすべての新しいキーを保持します。

移行を実行する前に、Oracle WalletをKey Vaultにアップロードすることをお薦めします。これにより、移行を開始する前に、過去のすべてのキー情報とともにウォレットのバックアップを保管できます。移行が完了したら、クライアント・システムで、手動で古いウォレットを削除してください。

共有サーバーまたはOracle RAC構成で運用している場合、データベースを再起動して、新しいTDEマスター・キーが、共有サーバー構成のすべてのエンドポイント・データベース・ノードに更新されるようにする必要があります。

11.4.4.2 既存のTDEウォレットのOracle Key Vaultへの移行

okvutil uploadコマンドを使用して、既存のTDEウォレットをOracle Key Vaultに移行できます。次のステップ7および8に示されているとおり、同じSQLPLUSセッションでウォレットを移行する前に、ソフトウェア・ウォレットを閉じてHSMウォレットを開くことが非常に重要です。

  1. 移行するデータが含まれているデータベースをバックアップします。

  2. エンドポイントのエンロールを完了します。

  3. まだしていなければ、okvutil uploadコマンドを使用して、既存のOracle WalletをKey Vaultにアップロードします。

    このステップでは、過去のTDEマスター・キーがすべて含まれているウォレットのコピーがOracle Key Vaultにあることを保証します。

  4. HSMのOracle Databasesqlnet.oraファイルを次のように構成します。

    ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=HSM)(METHOD_DATA=(DIRECTORY=wallet_location)))
    

    デフォルトで、sqlnet.oraファイルは、ORACLE_HOME/network/adminディレクトリ、またはTNS_ADMIN環境変数で設定された場所にあります。

  5. SQL*Plusの場合、データベースに再接続します。

    変更は、データベース・セッションを再起動するまで表示されません。

  6. V$ENCRYPTION_WALLET動的ビューを問い合せて、sqlnet.oraファイル内のMETHOD_DATAの設定が変更されたことを確認します。これで、問合せの出力にMETHOD=HSMが表示されます。

    SELECT * FROM V$ENCRYPTION_WALLET;
    
  7. エンドポイントがOracle Database 11gリリース2の場合は、次のように、ローカルのOracle Walletを閉じてHSMウォレットを開きます。

    1. 次のステップを使用して、ローカルのOracle Walletを閉じます。

      1. 自動ログイン・ウォレットが開いている場合、次のコマンドを実行します。

        oracle$ cd <wallet location>
        oracle$ mv cwallet.sso cwallet.sso.bak
        sqlplus> alter system set wallet close;
      2. パスワード保護ウォレットが開いている場合、次のコマンドを実行します。

        sqlplus> alter system set wallet close identified by "<wallet password>";
    2. HSMウォレットを開きます。

      sqlplus> alter system set wallet open identified by "<HSM connect string>";
  8. TDEウォレットからOracle Key Vaultに移行します。

    • Oracle Database 11gリリース2の場合:

      エンドポイント・クライアント・ソフトウェアのインストール時にウォレットのパスワードを入力した場合、次のコマンドを実行します。

      sqlplus> alter system set encryption key identified by "<endpoint password>" migrate using "<wallet password>"; 
      

      エンドポイント・クライアント・ソフトウェアのインストール時に自動ログイン・オプションを選択した場合、次のコマンドを実行します。

      sqlplus> alter system set encryption key identified by "null" migrate using  "<wallet password>";
    • Oracle Database 12cの場合は、SYSKM管理権限を付与されたユーザーとして、次を実行します。

      sqlplus> administer key management set encryption key identified by "<endpoint password>" MIGRATE USING "<wallet password>" with backup; 
      

      注意:

      administer key managementコマンドでwith backup句は必要ですが、Oracle Key VaultではTDEによって無視されます

  9. ウォレットを開きます。エンドポイントでOracle Key Vaultに接続するパスワードが必要な場合は、パスワードを入力します。

    • Oracle Database 11gリリース2の場合:

      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    • Oracle Database 12cの場合:

      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "Key_Vault_endpoint_password";
      
  10. 移行の完了後、自動ログイン・ウォレットを使用している場合、cwallet.sso.bakファイルの名前をcwallet.ssoに変更してそれを再有効化します。

関連項目:

11.4.4.3 TDEによって以前に暗号化されたデータベース内容のOracle Walletを使用したリストア

Oracleデータベース・エンドポイントが、ローカルのOracle WalletファイルからOracle Key Vaultの使用に変換された場合、その後、このローカル・ウォレット・ファイルにあるキーを使用して暗号化されたバックアップをリストアする必要がある場合があります。

この場合、Oracle Key Vaultから、リストア・プロセスでバックアップを復号化する際に使用するローカル・ウォレット・ファイルに、必要なキーをダウンロードする必要があります。たとえば、Finance_DBデータベースを最近移行し、移行前のウォレットをアップロードした後、Oracle Key Vaultへのオンライン・マスター・キーが使用されるようになったとします。システム障害のために、Oracle Key Vaultへの移行前に取ったデータベース・バックアップからリストアする必要が生じた場合も、以前にアップロードしたFinance_DBウォレット・データが含まれるOracle仮想ウォレットからダウンロードしたOracle Walletを使用して、データベースの内容をリストアできます。

Oracle Walletを使用して以前にTDE暗号化したデータベース内容をリストアする手順:

  1. okvutil downloadコマンドを使用して、Oracle Key VaultからこのOracle Walletをダウンロードします。
  2. Oracle Walletをダウンロードしたエンドポイントで、sqlnet.oraファイルに次の設定を追加します。
    METHOD_DATA=wallet_file_path
    
    METHOD=FILE
    ENCRYPTION_WALLET_LOCATION=(SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=wallet_file_path)))
    

    ENCRYPTION_WALLET_LOCATION設定は1行で記述します。

  3. ステップ1でパスワード保護されたウォレットを作成した場合、指定したパスワードを使用してウォレットを開きます。
    • Oracle Database 11gリリース2の場合は、ALTER SYSTEMシステム権限を付与されたユーザーとして、次を実行します。

      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "wallet_password"; 
      
    • Oracle Database 12cの場合は、SYSKM管理権限を付与されたユーザーとして、次を実行します。

      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "wallet_password";
      

    ウォレットを開くと、サーバーは更新されたsqlnet.oraファイルの内容を読み取ることができます。この時点で、エンドポイント・サーバーは元のバージョンのウォレットとともに実行できる状態にリストアされました。

11.4.5 永続マスター・キー・キャッシュ

永続マスター・キー・キャッシュ機能を使用すると、なんらかの理由でOracle Key Vaultサーバーを使用できない場合にデータベースを稼働させることができます。TDEマスター・キーは、メモリー内キャッシュに加えて永続マスター・キー・キャッシュにキャッシュされるため、データベース・プロセス間でマスター・キーを使用できます。これにより、データベースが新しいプロセスごとに、またはREDOログの切替えやデータベースの起動のたびに、Oracle Key Vaultサーバーと通信する必要がなくなります。

11.4.5.1 永続マスター・キー・キャッシュについて

永続マスター・キー・キャッシュは、Oracle Key Vaultサーバーの状態への依存を軽減することで、TDEマスター暗号化鍵の可用性を確保します。

TDEマスター暗号化キーは、メモリー内キャッシュに加えて永続マスター・キー・キャッシュにキャッシュされるため、データベース・プロセス間でマスター・キーを使用できます。これにより、データベースが新しいプロセスごとに、またはREDOログの切替えやデータベースの起動操作のたびに、Oracle Key Vaultサーバーと通信する必要がなくなります。

TDEマスター・キーの可用性を保証する利点は、次のとおりです。

  • アップグレード、プライマリ・スタンバイ構成、スイッチオーバー、フェイルオーバー、およびOracle Key Vaultの再起動が必要なその他の手順におけるエンドポイントの継続的な運用

  • 1つのデータベースの複数のセッションが同一のマスター暗号化キーをリクエストしたときのOracle Key Vaultサーバーの負荷の削減

  • Oracle Key Vaultのスケーラビリティの改善

11.4.5.2 Oracle Key Vaultの永続マスター・キー・キャッシュ・アーキテクチャについて

Oracle Key Vaultの永続マスター・キー・キャッシュは、Oracle Key VaultのPKCS#11ライブラリに実装されます。永続マスター・キー・キャッシュ機能が構成されている場合、Oracle Key Vaultから最初のマスター・キーが取得されると、Oracle Key VaultのPKCS#11ライブラリによって永続マスター・キー・キャッシュが作成されます。

永続マスター・キー・キャッシュは、Oracle Key Vaultがインストールされている方法に応じて、自動ログイン・ウォレットまたはパスワード・ベースのウォレットになります。
  • Oracle Key Vaultが指定のパスワードを使用してインストールされている場合、永続マスター・キー・キャッシュはパスワード・ベースのウォレットになります。

  • Oracle Key Vaultが指定のパスワードを使用せずにインストールされている場合、永続マスター・キー・キャッシュは自動ログイン・ウォレットになります。

PKCS#11ライブラリには、メモリー内マスター・キー・キャッシュも実装されます。メモリー内マスター・キー・キャッシュ機能が構成されている場合、マスター・キーは、ライブラリをメモリーにロードしたプロセスのプロセス・メモリーにキャッシュされます。メモリー内マスター・キー・キャッシュと永続マスター・キー・キャッシュは互いに独立しています。これらは別々に有効化および無効化できます。

暗号化および復号化を含む操作の場合、PKCS#11はメモリー内マスター・キー・キャッシュでマスター暗号化鍵の検索を試みます。見つからない場合、PKCS#11は次に永続マスター・キー・キャッシュでマスター暗号化キーを検索します。マスター・キーがメモリー内マスター・キー・キャッシュと永続マスター・キー・キャッシュで見つからない場合は、Oracle Key Vaultサーバーから取得します(サーバーがオンラインの場合)。

11.4.5.3 永続マスター・キー・キャッシュの動作モード

Oracle Key Vault 12.2.0.5.0以降では、永続マスター・キー・キャッシュは、Oracle Key Vault優先モードと永続マスター暗号化キー・キャッシュ優先モードの2つのモードで動作します。

この2つのモードは、マスター・キーを取得するために永続マスター・キー・キャッシュとOracle Key Vaultを検索する順序が異なります。

11.4.5.3.1 Oracle Key Vault優先モード

Oracle Key Vault優先モードでは、エンドポイントはOracle Key Vaultサーバーからマスター暗号化キーを取得しようとします。Oracle Key Vaultサーバーがオフラインになった場合、エンドポイントは永続マスター・キー・キャッシュからマスター暗号化鍵を取得しようとします。

エンドポイントでOracle Key Vaultサーバーのステータスを確認する必要があるが、オフラインになっている場合、エンドポイントは永続マスター・キー・キャッシュからマスター暗号化鍵を取得しようとします。このため、マスター・キーへのアクセスを必要とするデータベース操作は時間がかかる場合があります。

11.4.5.3.2 永続マスター・キー・キャッシュ優先モード

永続マスター・キー・キャッシュ優先モードでは、エンドポイントは永続マスター・キー・キャッシュからマスター暗号化鍵を取得しようとします。マスター・キーが永続マスター・キー・キャッシュで使用できない場合、エンドポイントはOracle Key Vaultサーバーからマスター暗号化鍵を取得しようとします。

Oracle Key Vaultサーバー上のマスター暗号化鍵に対する変更は、鍵が永続マスター・キー・キャッシュで期限切れになるまで適用されません。

11.4.5.4 永続マスター・キー・キャッシュ - リフレッシュ期間

永続マスター・キー・キャッシュのリフレッシュ期間機能を使用すると、サービス・エンドポイントの停止時間は最小になります。この機能により、データベース・エンドポイントは、OKVサーバーから期限が切れたマスター・キーのリフレッシュを複数回試行できます。この意味で、エンドポイントは、マスター・キーのリフレッシュを完了するためにOKVサーバーがオンラインに戻るのを待機します。一方、マスター・キー・リフレッシュの試行に失敗した場合、キーはリフレッシュ期間の継続中に、永続キャッシュから取得されます。

永続マスター・キー・キャッシュのリフレッシュ期間機能は、このように、マスター・キーが永続マスター・キー・キャッシュにキャッシュされた後に使用できる期間を延長します。同時に、エンドポイントはキャッシュ時間の最後に一度ではなく、リフレッシュ期間中にキーをリフレッシュできます。これは、HAスイッチオーバーの進行中など、Oracle Key Vaultを使用できないときに永続キャッシュ期間の期限が切れる可能性に対応しています。リフレッシュ期間が終了し、キーがリフレッシュされるとすぐにキャッシュ期間が開始します。

okvclient.oraファイルのパラメータPKCS11_PERSISTENT_CACHE_REFRESH_WINDOWは、永続マスター・キー・キャッシュにキャッシュされた後にマスター・キーを使用できる期間を延長するために使用します。この値は、Oracle Key Vaultサーバーがリカバリしてオンラインに戻るのにかかる時間を反映しています。値は分単位で指定します。PKCS11_PERSISTENT_CACHE_REFRESH_WINDOWのデフォルト値は30 (分)です。

永続キャッシュのリフレッシュ期間の詳細は、PKCS11_PERSISTENT_CACHE_REFRESH_WINDOWパラメータを参照してください。

11.4.5.5 永続マスター・キー・キャッシュのパラメータ

永続マスター・キー・キャッシュの構成に使用されるパラメータは次のとおりです。

11.4.5.5.1 PKCS11_CACHE_TIMEOUTパラメータ

okvclient.oraファイルのパラメータPKCS11_CACHE_TIMEOUTは、インメモリー・キャッシュにキャッシュされた後にマスター暗号化キーを使用できる期間を指定します。この値は分単位で指定する必要があります。指定した期間が経過すると、マスター暗号化キーは期限切れになります。マスター・キーの期限が切れても、インメモリー・キャッシュから削除されません。

PKCS11_CACHE_TIMEOUTのデフォルト値は、60 (分)です。

11.4.5.5.2 PKCS11_PERSISTENT_CACHE_TIMEOUTパラメータ

okvclient.oraファイルのパラメータPKCS11_PERSISTENT_CACHE_TIMEOUTは、永続マスター・キー・キャッシュにキャッシュされた後にマスター暗号化鍵を使用できる期間を指定します。この値は分単位で指定する必要があります。指定した期間が経過すると、マスター暗号化キーは期限切れになります。マスター・キーは期限が切れても、永続マスター・キー・キャッシュから削除されません。

OKV Persistent Cache entriesリストに表示されるCache Start TimeおよびMaximum Use Timeの値は、マスター暗号化キーが更新される際に更新されます。

PKCS11_PERSISTENT_CACHE_TIMEOUTのデフォルト値は、1440 (分)です。

永続マスター・キー・キャッシュは、PKCS11_PERSISTENT_CACHE_TIMEOUTパラメータを0 (ゼロ)に設定することで無効にできます。

注意:

PKCS11_PERSISTENT_CACHE_TIMEOUTパラメータとそのデフォルト値は、デフォルトでokvclient.oraに含まれています。
11.4.5.5.3 PKCS11_PERSISTENT_CACHE_FIRSTパラメータ

okvclient.oraファイルのパラメータPKCS11_PERSISTENT_CACHE_FIRSTは、永続マスター・キー・キャッシュの操作モードを指定します。操作モードは次のとおりです。

  • Oracle Key Vault優先モード: Oracle Key Vault優先モードを有効にするには、PKCS11_PERSISTENT_CACHE_FIRSTパラメータの値を0(ゼロ)に設定します。

  • 永続マスター・キー・キャッシュ優先モード: 永続マスター・キー・キャッシュ優先モードは、デフォルト・モードです。

    永続マスター・キー・キャッシュ優先モードを有効にするには、PKCS11_PERSISTENT_CACHE_FIRSTパラメータの値を1に設定します。

11.4.5.5.4 PKCS11_PERSISTENT_CACHE_REFRESH_WINDOWパラメータ

okvclient.oraファイルのパラメータPKCS11_PERSISTENT_CACHE_REFRESH_WINDOWは、永続マスター・キー・キャッシュにキャッシュされた後にマスター暗号化鍵を使用できる期間を延長します。値は分単位で指定する必要があります。PKCS11_PERSISTENT_CACHE_REFRESH_WINDOWのデフォルト値は30 (分)です。

永続マスター・キー・キャッシュは、PKCS11_PERSISTENT_CACHE_REFRESH_WINDOWパラメータを0 (ゼロ)に設定することで無効にできます。

11.4.5.6 永続マスター・キー・キャッシュのコンテンツのリスト

エンドポイント・ソフトウェアのインストール後、エンドポイント管理者は、コマンドライン・ユーティリティokvutilを使用してOracle Key Vaultと通信し、セキュリティ・オブジェクトをアップロードおよびダウンロードできます。

okvutil listコマンドを使用すると、永続マスター・キー・キャッシュにキャッシュされているマスター暗号化鍵をリストできます。

次の例では、永続マスター・キー・キャッシュにキャッシュされたマスター暗号化鍵をリストする方法を示します。

$ ./okvutil list -t okv_persistent_cache -l $ORACLE_HOME/okv/$ORACLE_SID
Enter Oracle Key Vault endpoint password:  

OKV Persistent Cache entries:
Current Persistent Cache Timeout is 600 seconds
Version Unique ID                            TDE Master Key Identifier          Cache Start Time    Maximum Use Time  Maximum Refresh Window  Status
02      55D745B1-2F30-667F-E053-0100007FAFDB 0636846AAF88F74FC6BF1DB68538797B69 22:38:12 2019-08-03 600 seconds       0 seconds                Expired
02      55D745B1-2F2E-667F-E053-0100007FAFDB 063AC48E9433734F7EBF97180276E719C4 22:37:10 2019-08-03 600 seconds       180 seconds              Available
02      55D745B1-2F2D-667F-E053-0100007FAFDB 0604425983989C4F6ABF7BD9E1D55459C4 22:37:00 2019-08-03 600 seconds       180 seconds              Available
02      55D70FA4-81D1-5C8A-E053-0100007F8217 06172EACB79F4C4F32BFB7D50B0ACA7101 03:44:22 2019-08-03 300 seconds       0 seconds                Expired
02      55D745B1-2F2B-667F-E053-0100007FAFDB 06983C4664FFC04F6ABF72F961A15AD943 22:36:49 2019-08-03 600 seconds       300 seconds              Available
02      55D745B1-2F29-667F-E053-0100007FAFDB 0639E05D58B27B4FFDBFAEC5EAA08DB301 03:26:40 2019-08-03 300 seconds       0 seconds                Expired
02      55D745B1-2F28-667F-E053-0100007FAFDB 06A29F4039E1B74FDCBFA687E0608EEEBA 03:19:17 2019-08-03 300 seconds       0 seconds                Expired
02      55D745B1-2F27-667F-E053-0100007FAFDB 0678287C2877B74FF3BF0BA33A17A59F94 03:19:21 2019-08-03 300 seconds       0 seconds                Expired

次の表では、OKV Persistent Cache entriesリスト内の列を示します。

列名 説明

Version

永続マスター・キー・キャッシュのバージョン

Unique ID

マスター・キーに割り当てられたKMIP識別子

TDE Master Key Identifier

マスター・キーに割り当てられたデータベースID

Cache Start Time

マスター・キーがキャッシュされた時刻

Maximum Use Time

マスター・キーがキャッシュされた(される)期間

Maximum Refresh Window

永続マスター・キー・キャッシュにキャッシュされた後にマスター・キーを使用できる延長期間

Status

マスター・キーが使用可能または失効しているかどうかを示します

11.4.5.7 Oracle Databaseのデプロイメントと永続マスター・キー・キャッシュ

永続マスター・キー・キャッシュがOracle Key Vaultと他のOracle機能の統合に与える影響に注意してください。

  • Oracle Key Vaultサーバーがオフラインの場合のデータベースの再起動: 自動ログイン・ウォレットを使用するようにOracle Key Vaultを構成すると、データベースはデータベースの再起動時にOracle Key Vaultサーバーに接続します。データベースの再起動時にOracle Key Vaultサーバーがオフラインの場合、データベースは永続マスター・キー・キャッシュからマスター暗号化鍵を取得します。マスター暗号化キーがアクティブで期限切れになっていない場合、データベース操作は正常に再開します。

    永続マスター・キー・キャッシュおよびOracle Key Vaultエンドポイント・ウォレットのパスワードが同期されていることを確認してください。

    注意:

    エンドポイント・ウォレットの資格証明が変更された場合は、永続マスター・キー・キャッシュを削除する必要があります。
  • Oracle Real Application Cluster (Oracle RAC)環境での永続マスター・キー・キャッシュの使用: Oracle RAC環境では、各Oracle RACノードは一意のデータベース・エンドポイントであり、一意の永続マスター・キー・キャッシュを使用します。

    Oracle RAC環境では、各RACノードの永続マスター・キー・キャッシュにマスター暗号化鍵の最新バージョンをキャッシュするために、各RACノードからデータベースを問い合せる必要があります。

  • Active Data Guard環境での永続マスター・キー・キャッシュの使用: プライマリ・サーバーのデータベースにあるマスター暗号化鍵のローテーションによって、プライマリ・サーバーのデータベースの永続マスター・キー・キャッシュにマスター暗号化鍵がキャッシュされます。

    プライマリ・サーバーから新しいREDOログがスタンバイ・サーバーに適用された後、スタンバイ・サーバーでは、新しいマスター・キーをスタンバイ・サーバーのデータベースの永続マスター・キー・キャッシュに取得してキャッシュします。混乱を回避するために、プライマリ・サーバーのデータベース内のマスター暗号化キーのローテーション直後に、プライマリ・サーバーとスタンバイ・サーバーを同期化してください。

11.4.6 停止時間の最小化

業務上重大な操作には、データにアクセスしやすいことと、最小限の停止時間でリカバリできることが必要です。次の方法で、停止時間を最小限に抑えるようにOracle Key Vaultを構成できます。

  • 高可用性の構成: スタンバイ・サーバーの形で冗長性を追加することで、高可用性を構成します。障害発生時にはスタンバイ・サーバーがプライマリ・サーバーから後を引き継ぐことで、単一障害点を排除し、停止時間を最小限に抑えます。高可用性の構成の詳細は、「高可用性の構成」を参照してください。

  • 読取り専用制限モードの有効化: プライマリまたはスタンバイOracle Key Vaultサーバーがサーバー、ハードウェアまたはネットワークの障害の影響を受けた場合、高可用性読取り専用制限モードにより、エンドポイントの操作の継続性が保証されます。計画外停止によってスタンバイ・サーバーにアクセスできなくなった場合でも、エンドポイントはプライマリ・サーバーを使用できます。

    高可用性読取り専用制限モードが無効になっている場合、スタンバイでの障害発生時に、プライマリ・サーバーは使用できなくなり、リクエストの受け入れは停止されます。プライマリ・サーバーとスタンバイ・サーバーの間で接続が復元されるまで、Oracle Key Vaultに接続されたエンドポイントはキーを取得できません。

    プライマリ・サーバーまたはスタンバイ・サーバーに障害が発生した場合のエンドポイントの操作の継続性を保証するには、読取り専用制限モードを有効にします。

  • 永続マスター・キー・キャッシュの有効化: 永続マスター・キー・キャッシュは、プライマリ・サーバーまたはスタンバイ・サーバーに障害が発生した場合に、エンドポイントが鍵にアクセスできるようにします。障害が発生したピアから存続するサーバーが後を引き継ぐため、エンドポイントは永続キャッシュからキーを取得して、正常に操作を続行できます。永続マスター・キー・キャッシュの詳細は、「永続マスター・キー・キャッシュ」を参照してください。

  • エンドポイントでのTDE Heartbeatデータベース・パッチの適用: バグ22734547のデータベース・パッチを適用してOracle Key Vaultのハートビートを調整します。

Key Vaultデータのバックアップは定期的に実行することをお薦めします。このようにすることで、バックアップとそのデータが最新に保たれます。このバックアップを使用して新規または既存のKey Vaultサーバーをリストアし、最小限の停止時間とデータ損失で完全稼働させることができます。

OKVインストールでオンライン・マスター・キー(旧名はTDE直接接続)を使用する場合、停止時間合計を短縮するために、アップグレード中にデータベース・エンドポイントを並行してアップグレードします。

11.5 TDEマスター暗号化キーとしてのユーザー定義のキーの使用

生成したキーをインポートして、Oracle Key VaultでTransparent Data Encryption (TDE)マスター暗号化キーとして使用できるようになりました。

11.5.1 TDEマスター暗号化キーとしてのユーザー定義のキーの使用方法

キー管理者はこのユーザー定義のキーを、書込みアクセス権があるグループにアップロードできます。この機能によって、鍵管理者は、TDEデータ暗号化鍵の暗号化に使用するマスター・キーの作成に対する管理を強化できます。

okvutil uploadコマンドのtypeパラメータには、TDEマスター・キーとして使用されるユーザー定義のキー・バイトをOracle Key Vaultにアップロードできる新しいオプションTDE_KEY_BYTESが用意されています。次に、このキーはデータベースでADMINISTER KEY MANAGEMENTコマンドを実行して、TDEマスター暗号化キーとしてアクティブ化されます。TDEマスター暗号化キーをアクティブ化する方法の詳細は、「TDEマスター暗号化キーのアクティブ化」を参照してください。

最初にユーザー定義のキーをアップロードし、次にこのキーをTDEマスター暗号化キーとしてアクティブ化する必要があります。

11.5.2 ユーザー定義のキーのアップロード

ユーザー定義のキーは、okvutil uploadコマンドを使用してOracle Key Vaultにアップロードします。ユーザー定義のキーのRAWバイト・データをテキスト・ファイルに格納して、Oracle Key Vaultにアップロードします。

Oracle Key VaultにアップロードされたRAWバイト・データは、TDEマスター・キーおよびTDEマスター・キー識別子の一部を構成します。データベースがTDEマスター・キーおよびTDEマスター・キー識別子としてデータを識別およびアクティブ化できるように、追加のメタデータがRAWバイト・データに追加されます。

テキスト・ファイルでは、TDEマスター・キーを構成するRAWバイト・データの先頭に次の接頭辞が付きます。
TDE Master Key 
TDEマスター・キー識別子を構成するRAWバイト・データには、次の接頭辞が付きます。
TDE Master Key Identifier

TDEマスター・キー識別子は、データベースのマスター・キーを表します。キーがアクティブ化されると、TDEマスター・キー識別子v$encryption_keysビューのKEY_ID列のサブセットとして構成するユーザー定義のRAWバイトが表示されます。Oracle Key Vaultでは、TDEマスター・キーおよびTDEマスター・キー識別子は、対称鍵がKMIPオブジェクト型である管理対象KMIPオブジェクトとして格納されます。

ユーザー定義のキーをアップロードする手順:

  1. ユーザー定義のキーのRAWバイト・データを含むテキスト・ファイルを作成します。

    書式は次のとおりです。

    TDE Master Key Identifier: <contiguous TDE Master Key Identifier bytes encoded in hex (32 bytes long)>
    TDE Master Key: <contiguous TDE Master Key bytes encoded in hex (64 bytes long)>

    例:

    TDE Master Key Identifier: 1F1E1D1C1B1A10191817161514131210
    TDE Master Key: 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F
  2. ファイルをtde_key_bytes.txtという名前で保存します。
  3. okvutil uploadコマンドを使用して、tde_key_bytes.txtをアップロードします。

    okvutil uploadコマンドの書式は次のとおりです。

    okvutil upload [--overwrite] --location location --type type [--group group] [--
    description description] [--verbose verbosity_level]

    例:

    $OKV_HOME/bin/okvutil upload -l /home/oracle/tde_key_bytes.txt -t TDE_KEY_BYTES -g "FIN_DATABASE_VIRTUAL_WALLET" -d "This key was created for Financial database use on 1st Jan 2018" 

    この例の詳細は次のとおりです。

    • -lには、tde_key_bytes.txtファイルへのパスを指定します。

      .
    • -tには、アップロードするオブジェクトのタイプを指定します。ユーザー定義のキーをアップロードするには、タイプをTDE_KEY_BYTESとして指定します。

    • -gには、キーが追加されるOracle Key Vault仮想ウォレットの名前を指定します。

    • -dには、キーの説明を指定します。

    注意:

    -tTDE_KEY_BYTESの場合、-dに指定された説明は、Oracle Database 12.1以上のv$encryption_keysビューにタグとして表示されます。
  4. 必須パラメータを指定して、[Enter]を押します。
  5. Oracle Key Vaultエンドポイント・パスワードを入力して、[Enter]を押します。
    Upload succeededというメッセージが表示されます。
    $OKV_HOME/bin/okvutil upload -l /home/oracle/tde_key_bytes.txt -t TDE_KEY_BYTES -g "FIN_DATABASE_VIRTUAL_WALLET" -d "This key was created for Financial database use on 1st Jan 2018" 
    Enter Oracle Key Vault endpoint password:
    Upload succeeded
ユーザー定義のキーのRAWバイト・データがアップロードされます。次のステップは、ユーザー定義のキーをTDEマスター暗号化キーとしてアクティブ化することです。

11.5.3 TDEマスター暗号化キーとしてのユーザー定義のキーのアクティブ化

ユーザー定義のキーをアップロードした後は、そのキーをTDEマスター暗号化キーとしてアクティブ化します。

注意:

TDEマスター・キー識別子用にOracle Key VaultにアップロードされるRAWバイト・データは、Oracle Key Vaultの対応するTDEマスター暗号化鍵として作成されるKMIPオブジェクトのNAME属性として表示されます。

ユーザー定義のキーをアクティブ化する手順:

  1. 「Item Details」ページから、ユーザー定義のキーのTDEマスター・キー識別子を取得します。
    1. キー管理者ロールを持っているユーザーまたは仮想ウォレットへのアクセス権を持っているユーザーとして、Oracle Key Vault管理コンソールにログインします。
    2. 「Keys & Wallets」タブをクリックします。「Wallets」ページが表示されます。
    3. 左のサイドバーの「All Items」をクリックします。Key Vaultのすべてのセキュリティ・オブジェクトが表示された「All Items」ページが表示されます。
    4. ユーザー定義のキーに対応する「Details」列の鉛筆アイコンをクリックします。キーの属性が表示された「Item Details」ページが表示されます。
    5. 「Advanced」をクリックして、キーの暗号化属性を表示します。
    6. 必須のキーIDが表示されます。キーIDにはORACLE.TDE.HSM.MKという接頭辞が付いています。

      例:

      ORACLE.TDE.HSM.MK.061F1E1D1C1B1A10191817161514131210

      注意:

      TDEマスター・キー識別子には、追加のメタデータの接頭辞が付いたユーザー定義のRAWバイト・データが含まれます。
    7. 接頭辞ORACLE.TDE.HSM.MK.の後に表示されるキーIDをコピーして保存します。

      例:

      061F1E1D1C1B1A10191817161514131210
  2. データベースに接続し、ADMINISTER KEY MANAGEMENTコマンドを使用して、TDEマスター暗号化キーとしてキーをアクティブ化します。

    ADMINISTER KEY MANAGEMENTコマンドの書式は次のとおりです。

     ADMINISTER KEY MANAGEMENT USE [ENCRYPTION] KEY <Key ID for activation> 
           [USING TAG <tag>] 
           IDENTIFIED BY <keystore_password> 
           [WITH BACKUP [USING <backup_id>]];

    例:

    $ORACLE_HOME/bin/sqlplus / as sysdba
    SQL> Administer key management use key '061F1E1D1C1B1A10191817161514131210' identified by "Welcome_1";

ユーザー定義のキーが、TDEマスター暗号化キーとしてアクティブ化されます。

注意:

Oracle Database 12.1以降では、V$ENCRYPTION_KEYSビューのTAG列に、新しく作成されたキーの識別子を問い合せることができます。

11.6 Oracle RAC環境でのTDE構成済Oracle Databaseの使用

TDEを構成したOracle Databaseで、Oracle Database Real Application Cluster (Oracle RAC)環境にOracle Walletをアップロードした場合、クラスタ内のノードは、仮想ウォレットを共有する必要があります。

クラスタが仮想ウォレットを共有できるようにするには、次のいずれかの手法を使用します。

  • 仮想ウォレットを、クラスタ内のすべてのノードの共有デフォルト・ウォレットとして定義します。

  • クラスタ内の各ノードが別々のデフォルト・ウォレットを持っている場合、すべての他のノードのデフォルト・ウォレットへのアクセス権を各ノードに付与することで、同じ効果が得られます。他のノードのデフォルト・ウォレットへのアクセス権を各ノードに付与するプロセスを単純化するために、エンドポイント・グループを使用できます。

    最初の方法に対するこの手法の優位性は、デフォルト・ウォレットをすでに持っている複数のノードがあり、それらにウォレットを共有させる場合でも、デフォルト・ウォレットを再割当てする必要がないことです。最初の方法では、エンドポイントのデフォルト・ウォレットを再割当てするためにエンドポイントを再エンロールする必要があるため、これは特に重要です。他のノードのデフォルト仮想ウォレットへのアクセス権を各ノードに付与するプロセスを単純化するために、エンドポイント・グループを使用できます。

単一インスタンス・データベース環境の場合と同様、パスワード保護されたウォレットをダウンロードしたら、手動で開く必要があります。プライマリ・ノード上に1つのウォレットがあり、その後、そのウォレットを他のノードにダウンロードする場合、これらの各ノード上でウォレットを明示的に開く必要があります。

各RACノードはデータベースの異なるエンドポイントであり、個別の永続キャッシュを持っています。RACデータベースの場合、問合せは各RACノードから開始して、操作が中断しないよう、RACノードに最新のマスター・キーをキャッシュする必要があります。

11.7 Oracle GoldenGate環境でのTDE構成済Oracle Databaseの使用

Oracle GoldenGateの共有シークレットおよびTDEマスター・キーを含むOracle WalletをOracle Key Vaultサーバーに移行できます。

11.7.1 Oracle GoldenGate環境でのOracle Walletのアップロードについて

Oracle Key Vaultが使用されず、Oracle TDE対応のデータベースがOracle GoldenGateおよびOracle Walletとともに構成されている環境の場合、このデータベース(ソース・データベースと呼ばれます)は、マスター・キーが格納されている同じOracle Walletに、Oracle GoldenGateの共有シークレットを格納します。

つまり、Oracle Key Vaultエンドポイントとしてソース・データベースを構成する場合、Oracle GoldenGateの共有シークレットは、マスター・キーがTDE対応のソース・データベース用に格納されている、同じOracle Key Vaultの仮想ウォレットに格納されます。

Oracle GoldenGateの共有シークレットとTDEマスター・キーが含まれるOracle Walletを、okvutilコマンドライン・ユーティリティを使用してOracle Key Vaultに移行する場合、TDE対応のソース・データベースのデフォルト・ウォレットには、共有シークレットおよびマスター・キーとともに移行されたOracle Wallet全体が格納されます。

また、構成されたターゲット・データベースがOracle Databaseの場合、すべてのTDEコマンドをレプリケートできるように、このターゲット・データベースがTDE対応であることを確認する必要があります。ソースおよびターゲットの2つのOracle TDE対応データベースでは、Oracle Wallet内に同じマスター・キーを持つ必要がないことに注意してください。このターゲット・データベースを新しいKey Vaultエンドポイントとして構成した場合、独立のKey Vaultエンドポイントで通常行うのと同様に、Oracle Key Vaultとの間でウォレットをアップロードおよびダウンロードできます。追加の構成は必要ありません。

11.7.2 Oracle GoldenGateデプロイメントでのオンライン・マスター・キーの使用

TDE直接接続という用語が、オンライン・マスター・キーという用語に置き換えられることに注意してください。

Oracle GoldenGateデプロイメントでオンライン・マスター・キーを使用するための構成ステップとして、次の2つのものがあります。

  1. GoldenGateデプロイメントとOracle Key Vaultのソース・データベース間で接続を構成します。
  2. ソース・データベース上で、Oracle WalletにおけるOracle GoldenGateシークレットの格納を構成します。

これで構成は完了です。sqlnet.oraファイルを正しく構成して、ソース・データベース上でTDEに必要な他の構成を完了すると、暗号化鍵を設定した場合(ALTER SYSTEM SET ENCRYPTION KEYまたはADMINISTER KEY MANAGEMENT SET ENCRYPTION KEYを使用)、Oracle Key VaultにTDEマスター・キーが作成されます。表の暗号化や、データベースへの暗号化された表領域の作成ができます。ソース・データベースで作成された暗号化データは、この手順が実行された後に、ターゲット・データベース上で引き続きレプリケートされます。他のOracle GoldenGate共有シークレットは、Oracle Key Vaultに格納されました。

関連項目:

11.7.3 Oracle GoldenGateデプロイメント上のTDEウォレットのOracle Key Vaultへの移行

TDE構成済データベースがあるOracle GoldenGate環境では、Oracle Walletには、TDEマスター・キーとOracle GoldenGate共有シークレットの両方が含まれます。

このOracle GoldenGate環境で使用されるターゲット・データベースは(Oracle TDE対応データベースの場合)、Oracle Key Vaultを使用するか、Oracle Walletを使用し続けるかのどちらかにも構成できることに注意してください。これらのデータベースは、スタンドアロンのTDEデータベース・エンドポイントの場合と同じように扱ってください。

この移行を完了すると、構成は完了です。sqlnet.oraファイルを正しく構成して、TDEの必要な他の構成を完了すると、暗号化鍵を設定した場合(ALTER SYSTEM SET ENCRYPTION KEYまたはADMINISTER KEY MANAGEMENT SET ENCRYPTION KEYを使用)、Oracle Key VaultにTDEマスター・キーが作成されます。引き続き、暗号化された表または表領域をデータベースに作成し、使用することができます。ソース・データベースで作成された暗号化データは、この手順が実行された後に、ターゲット・データベース上で引き続きレプリケートされます。

関連項目:

Oracle WalletからKey Vaultへの移行については、既存のTDEウォレットのOracle Key Vaultへの移行を参照してください。

11.8 Oracle Active Data Guard環境でのTDE構成済Oracle Databaseの使用

Oracle Active Data Guard環境では、Oracle Key VaultサーバーへのOracle Walletのアップロード、オンライン・マスター・キーの使用、エンドポイント間でのウォレットの移行、ロジカル・スタンバイ・データベースでのTDEウォレットの移行と確認などのアクティビティを実行できます。

11.8.1 Oracle Active Data Guard環境でのOracle Walletのアップロードについて

Oracle Walletを使用するTDE対応のプライマリおよびスタンバイ・データベースがあるOracle Active Data Guard環境では、初期TDE構成後、およびその後でプライマリ・データベース上のマスター・キーをキー更新する場合はいつでも、プライマリ・データベースからスタンバイへOracle Walletファイルを物理的にコピーする必要があります。

そのため、Oracle Key VaultをTDE対応のActive Data Guardデータベースとともに使用する場合、プライマリおよびスタンバイ・データベースは、エンドポイントとしてOracle Key Vaultに登録されている必要があります。プライマリおよびスタンバイ・データベースに登録されたエンドポイントの両方が、Oracle Key Vault上に同じデフォルト仮想ウォレットを持っていることを確認する必要があります。

このようにして、2つのデータベースは、ウォレット・ファイルをプライマリ・データベースからスタンバイ・データベースに手動でコピーすることなく、キーおよびウォレットの集中管理を実現できます。

Active Data Guard環境での永続キャッシュ

プライマリ・データベースのREKEYは、それ自体の永続キャッシュにマスター・キーをキャッシュします。プライマリの新しいREDOログがスタンバイに適用されると、スタンバイはOKVから新しいキーをフェッチし、それをスタンバイの永続キャッシュにキャッシュします。プライマリでのキーのキャッシュとスタンバイでのキーのキャッシュの間には時間差があります。REKEYの後できるだけ早く、プライマリとスタンバイを同期することをお薦めします。

11.8.2 Oracle Active Data Guard環境でのOracle Walletのアップロード

次のように、Active Data Guard環境にOracle Walletをアップロードできます。

  1. プライマリおよびスタンバイ・データベースとして、それぞれ1つのエンドポイントを登録します。
  2. それぞれのデータベース上で各エンドポイント用のokvclient.jarファイルをダウンロードします。
  3. 移行または逆移行を実行する必要がある場合は、エンドポイント・パスワードがTDEウォレット・パスワードと同じであることを確認します。
  4. プライマリおよびスタンバイ・データベースのエンドポイントの両方が、同じデフォルト仮想ウォレットを使用していることを確認します。

11.8.3 Oracle Active Data Guard環境でのオンライン・マスター・キー接続の実行

Oracle Active Data Guard環境でTDE直接接続を実行するための手順は、標準Oracle Database環境の場合と同じです。

関連項目:

詳細は、Oracle Key Vaultでのオンライン・マスター・キーの使用についてを参照してください。

11.8.4 Oracle Active Data Guard環境でのOracle Walletの移行

次のように、Oracle Active Data Guard環境でOracle Walletを移行できます。

  1. okvutil uploadコマンドを使用して、プライマリ・データベース上にあるローカルのOracle Walletの内容をOracle Key Vaultにアップロードします。
  2. ウォレットを移行するステップを実行します。
  3. スタンバイ・データベース上で既存のOracle Walletを閉じます。
    • Oracle Database 11gリリース2の場合は、ALTER SYSTEMシステム権限を付与されたユーザーとして、次を実行します。

      ALTER SYSTEM SET ENCRYPTION WALLET CLOSE IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    • Oracle Database 12cの場合は、SYSKM管理権限を付与されたユーザーとして、次を実行します。

      ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY "Key_Vault_endpoint_password";
      
  4. スタンバイ・データベースを停止します。

    次に例を示します。

    SHUTDOWN IMMEDIATE
    
  5. スタンバイ・データベースを再起動します。

    次に例を示します。

    STARTUP
    
  6. Oracle Walletを開きます。
    • Oracle Database 11gリリース2の場合は、ALTER SYSTEMシステム権限を付与されたユーザーとして、次を実行します。

      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    • Oracle Database 12cの場合は、SYSKM管理権限を付与されたユーザーとして、次を実行します。

      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "Key_Vault_endpoint_password";
      
  7. スタンバイ・データベース上で適用プロセスを開始します。

関連項目:

11.8.5 Oracle Active Data Guard環境でのOracle Walletの逆移行

Active Data Guard環境でOracle Walletを逆移行する手順:

  1. okvutil downloadコマンドを使用して、Oracle Key Vaultからプライマリ・データベースにOracle Walletのキーをダウンロードします。これらの鍵は、ローカル・キーストアにダウンロードします。

    okvutil downloadコマンドを参照してください。

  2. 逆移行を実行します。

    逆移行の実行に関する詳細は、『Oracle Database Advanced Securityガイド』を参照してください。

  3. スタンバイ・データベース上で既存のOracle Walletを閉じます。
    • Oracle Database 11gR2の場合:

      ALTER SYSTEM SET ENCRYPTION WALLET CLOSE IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    • Oracle Database 12cの場合:

      ADMINISTER KEY MANAGEMENT SET KEYSTORE CLOSE IDENTIFIED BY "Key_Vault_endpoint_password";
      
  4. プライマリ・データベースからスタンバイ・データベースにOracle Walletをコピーします。

    詳細は、『Oracle Database Advanced Securityガイド』を参照してください。

  5. スタンバイ・データベース上でOracle Walletを開きます。
    • Oracle Database 11gR2の場合:

      ALTER SYSTEM SET ENCRYPTION WALLET OPEN IDENTIFIED BY "Key_Vault_endpoint_password"; 
      
    • Oracle Database 12cの場合:

      ADMINISTER KEY MANAGEMENT SET KEYSTORE OPEN IDENTIFIED BY "Key_Vault_endpoint_password";
      
  6. スタンバイ・データベース上で適用プロセスを開始します。

    スタンバイ・データベース上での適用プロセスの開始に関する情報は、『Oracle Data Guard概要および管理』を参照してください。

注意:

エンドポイントのパスワードとローカルTDEウォレットのパスワードが異なる場合は、自動ログインHSM機能を使用してください。自動ログイン・ウォレットの構成に関する詳細は、『Oracle Database Advanced Securityガイド』を参照してください。

11.8.6 ロジカル・スタンバイ・データベースでのOracle Key VaultへのOracle TDEウォレットの移行

次のように、ロジカル・スタンバイ・データベースを構成済で、Oracle Databaseリリース12cを使用している場合、Oracle Key VaultにTDEウォレットを移行できます。

  1. 同じデフォルトの仮想ウォレットを持つようにプライマリおよびスタンバイ・エンドポイントを登録します。
  2. 必要に応じて、各エンドポイントにokvclient.jarファイルをダウンロードしてインストールします。
  3. プライマリ・データベースで移行を実行します。
  4. ロジカル・スタンバイでSQL Applyプロセスを完了してから、スタンバイ・データベースを再起動します。
  5. 移行に成功したというステータスを確認するには、V$ENCRYPTION_WALLET動的ビューを問い合せます。

関連項目:

11.8.7 ロジカル・スタンバイ・データベースでのOracle TDEウォレット移行の確認

Oracle Databaseリリース12c環境のロジカル・スタンバイ構成で、Oracle TDEウォレットを移行した後に構成を確認するには、V$ENCRYPTION_WALLET動的ビューのWRL_TYPEおよびWALLET_ORDER列を問い合せます。

V$ENCRYPTION_WALLETビューを問い合せることで、プライマリ・キーストアを追跡できます。単一ウォレットのみを構成している場合、WALLET_ORDER列はSINGLEに設定されます。2ウォレットまたは混在構成の場合、列は、アクティブ・マスター・キーが存在する場所に応じて、PRIMARYまたはSECONDARYに設定されます。次の問合せについて検討します。

次の問合せでは、単一ウォレットのみが構成されています。

SELECT WRL_TYPE, WALLET_ORDER FROM V$ENCRYPTION_WALLET;

WRL_TYPE             WALLET_OR
-------------------- ---------
FILE                 SINGLE

ロジカル・スタンバイ構成の次の問合せでは、アクティブ・マスター・キーがOracle Key Vault仮想ウォレットに移行されています。

SELECT WRL_TYPE, WALLET_ORDER FROM V$ENCRYPTION_WALLET;
 
WRL_TYPE             WALLET_OR
-------------------- ---------
FILE                 SECONDARY
HSM                  PRIMARY

この問合せでは、論理構成のプライマリ・データベースとスタンバイ・データベースの両方で、HSMPRIMARYウォレットとして示されます。

11.9 Oracle Key VaultとMySQLの統合

Oracle Key Vaultでは、リリース12.2以降からMySQLとの統合がサポートされています。

注意:

MySQL Windowsデータベースはサポートされません。

Oracle Key Vaultでは、MySQLのTDE暗号化キーを管理できます。

11.10 Automatic Storage ManagementからOracle Key Vaultへのキーストアのアップロード

ここで説明する2ステップのプロセスにより、Automatic Storage Management (ASM)からOracle Key Vaultに(またはOracle Key VaultからASMに)キーストアをコピーできます。
ASMからOracle Key Vaultへのキーストアのアップロードは2ステップのプロセスです。
  1. ASMからファイル・システムにキーストアをコピーします。

  2. ファイル・システムからOracle Key Vaultにキーストアをアップロードします。

ASMからファイル・システムに(またはファイル・システムからASMに)キーストアをコピーするには、1つのソフトウェア・キーストアを既存のキーストアにマージするキーストア・マージ操作が必要です。このため、ソース・パスからターゲット・パスにキーストアをコピーするには、ターゲット・パスにキーストアが存在する必要があります。
次のようにADMINISTER KEY MANAGEMENT文を使用して、Automatic Storage Management (ASM)からソフトウェア・キーストアを移動できます。
  1. 次のコマンドで、ファイル・システム上のターゲット・キーストアを初期化します。
    ADMINISTER KEY MANAGEMENT CREATE KEYSTORE targetKeystorePath IDENTIFIED BY targetKeystorePassword;

    このように指定した場合:

    • targetKeystorePathは、ファイル・システム上のターゲット・キーストアのディレクトリ・パスです。

    • targetKeystorePasswordは、キーストアに作成するパスワードです。

    次に例を示します。

    ADMINISTER KEY MANAGEMENT CREATE KEYSTORE '/etc/ORACLE/KEYSTORE/DB1/' IDENTIFIED BY "destination_password"; 

    「/etc/ORACLE/KEYSTORE/DB1/」はファイル・システム上のターゲット・キーストアのパスで、「destination_password」はキーストアのパスワードです。

    これで、ASMのキーストアをターゲット・システムにコピーできます。
  2. 作成したターゲット・キーストアにASMのキーストアをコピーします。

    このステップでは、次のようにASMのキーストアをファイル・システムにマージする必要があります。

    ADMINISTER KEY MANAGEMENT MERGE KEYSTORE srcKeystorePath IDENTIFIED BY srcKeystorePassword INTO EXISTING KEYSTORE targetKeystorePath IDENTIFIED BY targetKeystorePassword WITH BACKUP USING backupIdentifier;

    このように指定した場合:

    • srcKeystorePathは、ソース・キーストアのディレクトリ・パスです。

    • srcKeystorePasswordは、ソース・キーストアのパスワードです。

    • targetKeystorePathは、ターゲット・キーストアのパスです。

    • targetKeystorePasswordは、ターゲット・キーストアのパスワードです。

    • backupIdentifierは、バックアップ・ファイル名に追加されるバックアップ識別子です。

    次に例を示します。

    ADMINISTER KEY MANAGEMENT MERGE KEYSTORE '+DATAFILE' IDENTIFIED BY "srcPassword" INTO EXISTING KEYSTORE '/etc/ORACLE/KEYSTORE/DB1/' IDENTIFIED BY "destination_password" WITH BACKUP USING "bkup";
    キーストアがファイル・システムにコピーされ、Oracle Key Vaultにアップロードできるようになりました。
  3. okvutil uploadコマンドを使用して、ファイル・システムからOracle Key Vaultにキーストアをアップロードします。
    $  okvutil upload -l location -t type

    説明:

    • locationは、ファイル・システム上のターゲット・キーストアのパスです。

    • typeはwalletです。

    次に例を示します。

    $ okvutil upload -l etc/ORACLE/KEYSTORE/DB1 -t wallet
ASMからOracle Key Vaultにキーストアがコピーされました。

Oracle Key VaultからASMにキーストアをコピーするには、逆のステップを踏みます。

  1. ファイル・システム上のターゲット・キーストア(存在しない場合)を初期化します。存在する場合は、このステップをスキップします。

  2. okvutil downloadコマンドを使用して、Key Vaultからファイル・システム上のターゲット・キーストアにキーストアをコピーします。

    $  okvutil download -l location -t type

    説明:

    • locationは、ファイル・システム上のターゲット・キーストアのパスです。

    • typeはwalletです。

    次に例を示します。

    $ okvutil download -l etc/ORACLE/KEYSTORE/DB1 -t wallet
  3. ターゲット・キーストアからASMにキーストアをコピーします。