目次
はじめに
みなさん、こんにちは。
Oracle Cloud Infrastructure 検証チームです。
今回は、
Oracle Cloud Infrastructure Marketplace 上でのOracle GoldenGate のマスター暗号化キーウォレットを
Oracle Cloud Infrastructure (以下OCI) のOCI GoldenGate にインポートする検証
を実施しましたので、ご紹介したいと思います。
今回の執筆者はプラチナホルダーであり20以上の資格を持つ GoldenGate にも精通したスペシャルな社員です。
過去の記事も是非ご覧下さいね。
OCI GoldenGate の以前までのリリースでは、マスター暗号化キーウォレットの管理操作をOCI 側で実施できるユーザー・インタフェースが提供されておらず、サポート・リクエストを上げてOracle サポート・チームにその対応を依頼する必要がありました。
しかし2023年2月時点の最新リリースで
マスター暗号化キーウォレットのエクスポート・インポート操作をエンド・ユーザ側で可能とする機能がOCI 側に実装されました。
これにより、トレイル・ファイルの暗号化に使用するマスター暗号化キーウォレットをOCI GoldenGate デプロイメント間あるいはオンプレミス環境とOCI GoldenGate 環境間で共有したい場合に、OCI 画面上の簡易な画面操作でウォレットの管理作業が実施できるようになりました。
セキュリティ情報漏洩対策強化の一環として朗報ですね。
前提知識
『マスター・キーとウォレット方式を使用したデータ暗号化方式』 とは
この方式では、Oracle GoldenGate でトレイル・ファイルが作成されるたびに、新しい暗号化キーが自動的に生成されます。
この暗号化キーでトレイル・ファイルの内容を暗号化します。
マスター暗号化キーは、その暗号化キーを暗号化する際に使用されます。
詳細は下記Oracle GoldenGate 公式ドキュメントをご参照下さい。
検証実施前の準備
今回の検証環境は、ソース側をOracle Cloud Infrastructure Marketplace 上のOracle GoldenGate とし、ターゲット側をOCI GoldenGate とします。
検証実施前の前提条件として、ソース側とターゲット側双方で下記準備作業が事前に完了していることとします。
- デプロイメントは作成済みであり、Web ブラウザで管理画面へのアクセスが可能であること
- ソース側デプロイメントにSSH 接続が可能であること
- ソース・データベースとターゲット・データベースのネットワーキングおよび接続設定、及び各データベースが各デプロイメントにそれぞれ割り当て済みであること
- ソース・データベースとターゲット・データベースに対して、 GoldenGate 使用にあたって事前に必要な各種設定が完了していること
- ソース側にExtract プロセス、ターゲット側にReplicat プロセスが作成済みであること
検証内容のサマリー
今回の検証内容を実施した順に以下に記載しています。
- マスター暗号化キーウォレットの作成
- マスター暗号化キーウォレットの取得
- ボールトの作成
- 暗号化キーの作成
- シークレットの作成
- マスター暗号化キーウォレットのインポート
- Extract プロセスの起動
- Replicat プロセスの起動
また、今回の検証手順の作成にあたっては下記Oracle Cloud 公式ドキュメントを参考にしております。
https://docs.oracle.com/en-us/iaas/goldengate/doc/manage-master-encryption-key-wallets.html
それでは説明と準備が整いましたので検証していきましょう。
マスター暗号化キーウォレットの作成
ソース側デプロイメントの管理画面に接続(OCI Marketplace)
ソース側デプロイメントの管理画面にWeb ブラウザでアクセスし、ユーザー名とパスワードを入力し[サインイン]をクリックします。
マスター暗号化キーウォレットを作成
マスター暗号化キーウォレットの取得
ソース側デプロイメントにSSHで接続
ソース側デプロイメントにSSHでアクセスし、ウォレット・ファイルの配置ディレクトリに移動し、cwallet.ssoという名前のファイルが作成されていることを確認します。
マスター暗号化キーウォレットのエンコーディング
下記コマンドでウォレット・ファイルをBase64エンコーディングし、表示された出力結果をコピーします。コピーした内容は後述の手順で使用します。
ボールトの作成
ボールトの作成
コンソール・メニューから[アイデンティティとセキュリティ] – [ボールト]にナビゲートし、[ボールトの作成]をクリックします。
[名前]に任意の名前を入力し、[ボールトの作成]をクリックします。
ボールトが正常に作成されたことを確認し、作成されたボールト名をクリックします。
マスター暗号化キーの作成
マスター暗号化キーの作成
[リソース] – [マスター暗号化キー]をクリックし、[キーの作成]をクリックします。
[名前]に任意の名前を入力し、[キーの作成]をクリックします。
シークレットの作成
シークレットの作成
[リソース] – [シークレット]をクリックし、[シークレットの作成]をクリックします。
[名前]に任意の名前を入力し、[暗号化キー]に前述の手順で作成した暗号化キーを選択し、[シークレット・コンテンツ]に前述の手順でコピーしたBase64エンコーディングの出力結果をペーストします。入力完了後、[シークレットの作成]をクリックします。
マスター暗号化キーウォレットのインポート
ターゲット側デプロイメントの管理画面に接続(OCI GoldenGate )
ターゲット側デプロイメントの管理画面にWebブラウザでアクセスし、ユーザー名とパスワードを入力し[サインイン]をクリックします。
マスター暗号化キーウォレットの確認(インポート前)
マスター・キーが何も表示されないことを確認します。インポート後に再度画面でインポート結果を確認する為、Webブラウザはそのままにしておきます。
マスター暗号化キーウォレットのインポート
コンソール・メニューから[Oracle Database] – [GoldenGate] – [デプロイメント]にナビゲートし、作成済みのデプロイメントをクリックします。
[リソース] – [マスター・キー・ウォレット操作]をクリックします。
[ウォレット・シークレット]に前述の手順で作成したシークレットを選択し、[インポート]をクリックします。
マスター暗号化キーウォレットの確認(インポート後)
ターゲット側デプロイメントの管理画面に戻り、インポートされたマスター・キーが正常に表示されることを確認します。
Extractプロセスの起動
Extractプロセスのパラメータ確認
ソース側デプロイメントの管理画面で、Extractプロセスの[アクション] – [詳細] をクリックします。
ENCRYPTTRAIL AES256パラメータが設定されていることを確認します。
Extractプロセスの起動
Extractプロセスが正常に実行中になることを確認します。
Extractプロセスのログ確認
下記メッセージが示す通り、トレイル・ファイルの暗号化にマスター暗号化キーが使用されていることを確認します。
Replicatプロセスの起動
Replicatプロセスのパラメータ確認
Replicatプロセスの起動
Replicatプロセスが正常に実行中になることを確認します。
Replicatプロセスのログ確認
下記メッセージが示す通り、トレイル・ファイルの復号にマスター暗号化キーが使用されていることを確認します。
さいごに
Oracle Cloud Infrastructure Marketplace上での Oracle GoldenGateのマスター暗号化キーウォレットをOCI GoldenGateにインポートする検証をしてみましたが、いかがでしたでしょうか?
マスター暗号化キーウォレットの管理作業をOCIの画面操作でエンド・ユーザが実施できるようになったことで
セキュリティ対策の一環でマスター暗号化キーの定期的な更新を定常の運用作業に組み込むこともできますね。
現在もOCI GoldenGateは時代のニーズに応えながら機能拡張等日々進化を続けており、次はどういう新機能がリリースされるのだろうと待つのもOCI GoldenGateの魅力でもあり楽しみでもあります。
その他、Oracle Cloudに関する記事はこちらからご覧下さいね。
Oracle Cloudに関するお問い合わせはこちらからお願いします!
投稿者プロフィール
- Oracle Cloud2024年12月3日プライベートDNSで名前解決してみた!
- Oracle Cloud2024年11月28日OCIのMySQLでレプリケーションを使用してみました!
- Oracle Cloud2024年11月21日コネクタ・ハブを利用してOCIのログイン通知を行う
- Dbvisit Standby2024年11月20日【Dbvisit Standby】チュートリアル_再同期(スタンバイDBとの同期復旧)