※ 本記事は、FREDERICK BOSCO, Parth Pimparkarによる”Announcing the External Key Management service in Oracle Cloud Infrastructure“を翻訳したものです。

2023年10月5日


Oracle Cloud Infrastructure (OCI) Vaultサービスは、OCI内のデータの保護に使用される暗号化キーを格納および管理します。現在は、OCI External Key Managementサービス(KMS)を使用して、OCI外部でホストされるサードパーティのキー管理システムで管理される暗号化キーを使用してOCIのデータを暗号化できます。暗号化鍵をオンプレミスまたはOCI外に格納する必要がある規制要件があるお客様は、アプリケーションをOCIに移行しながらそれを実行できるようになりました。External KMSはThales CipherTrust Managerをサポートしており、将来的には他のサードパーティのキー管理システムもサポートされる予定です。

External KMSには、次のような利点があります:

  • データ・ソブリン、コンプライアンス、規制: External KMSを使用すると、暗号化キーの管理と、キーを格納する場所を管理できます。この機能は、EU一般データ保護規則(GDPR)などの厳格なデータ・ソブリン要件に準拠する必要がある組織にとって有益です。
  • 信頼と保証: External KMSを使用すると、暗号化モジュールを所有し、暗号化キーの保管者になることができます。この機能は、エンド・カスタマー、パートナー、および利害関係者への暗号化プロセスの制御を実証する必要がある組織にメリットをもたらします。

External KMSワークフロー

External KMSは、OCIアプリケーションからの暗号化および復号化リクエストを、OCI外部の顧客がホストするお客様のThales CipherTrust Managerに転送します。Thales CipherTrust Managerが使用不可または切断されている場合、External KMSでは顧客キーのコピーがインポートまたはメンテナンスされないため、すべてのリクエストは失敗します。OCI監査ログおよびThales CipherTrust Managerを使用して、キーのすべての暗号化および復号化リクエストを監査できます。

次の図は、暗号化および復号化リクエストのワークフローを示しています:

A graphic depicting the architecture of the External KMS workflow.
図1: External KMSワークフローのアーキテクチャを示す図

サポートされているOCIサービス

OCI External KMSは、対称暗号化キーをサポートし、OCI Vaultとすでに統合されているアプリケーションと互換性があります。そのため、External KMSのメリットを得るためにアプリケーションを変更する必要はありません。キーは、OCI Vaultと99.9%の同じSLAと同じ方法で使用および関連付けできます。次のサービスはOCI Vaultと統合されており、変更することなくExternal KMSのメリットを利用できます:

  • OCI Storage: オブジェクト・ストレージ、ブロック・ボリュームおよびファイル・ストレージ
  • Oracle Container Engine for Kubernetes (OKE)
  • OCI Database: Autonomous Database Dedicated、Autonomous Database Shared、Exadata Cloud Database、Database as a Service
  • Oracle Fusion Applications

制御と運用負荷

External KMSでは、暗号化キーをより詳細に制御できますが、操作上の責任もあります。暗号化キーとハードウェア・セキュリティ・モジュール(HSM)をオンプレミスで管理、管理、保守する必要があります。この所有権モデルは、既存のOCI Vaultサービスとは異なります。このサービスでは、Oracleが顧客に代わってHSMインフラストラクチャを管理および管理します。OCI Vaultを使用すると、ほとんどのユース・ケースで最適なカスタマー・エクスペリエンスが提供され、少数の規制対象ワークロードではExternal KMSが必要になると考えています。

External KMSの設定および使用方法

External KMSは、Oracle Cloudコンソール、APIおよびCLIを介して使用できます。実際のキー・マテリアルがOCIに格納されていないため、開始するには、Vaultおよびマスター暗号化キーの階層(参照キーとも呼ばれる)を作成します。次の図に示すように、Vault、マスター暗号化キーおよびデータ暗号化キーの階層は、External KMSを使用するアプリケーションでは同じままです:

A graphic depicting the hierarchy for OCI applications in External KMS.
図2: External KMSのOCIアプリケーションの階層を示す図

Vaultおよびマスター暗号化キーを作成するには、External KMSとThales CipherTrust Managerが接続して相互に安全に通信できるように、次の1回かぎりの構成ステップを実行します。

Thales CipherTrust ManagerおよびOCI FastConnectの調達とプロビジョニング

  1. Thales CipherTrust Managerをインストールするには、仮想CMアプライアンスのオンプレミス・デプロイメントおよび物理CMサーバーのオンプレミス・デプロイメントの手順を参照してください。
  2. OracleとのコロケーションでFastConnectをインストールすることをお薦めします。それ以外の場合は、サード・パーティ・プロバイダを使用したFastConnectを参照してください。
    サイト間接続を使用してオンプレミス・ネットワークをOCIに接続できますが、信頼性の潜在的な問題にはお薦めしません。サイト間接続の設定方法については、ブログ「VPN Connect – Simple Implementation – Part 1/2」を参照してください。

OCIとThalesリソース間の安全な接続を確立

Thales CipherTrust Managerにアクセスするには、OCIの顧客が認証および認可されている必要があります。管理者は、ユーザーのアクセスと権限を制御します。OCI External KMSサービスは、認可にOAuth 2プロトコルを使用します。プロセスを完了するには、次のタスクを実行する必要があります:

  • 認証および認可のためにIDCS 9をOAuth 2.0で設定
  • Thales CipherTrust Managerを表す機密リソース・アプリケーションの設定
  • 機密クライアント・アプリケーションと機密リソース・アプリケーションの関連付け
  • JSON Web Token (JWT)発行者へのアイデンティティ・プロバイダの登録
  • Identity and Access Management IAMポリシーの構成

OCI External KMSドキュメントのこれらのステップの詳細を参照してください。

Thalesでの外部Vaultおよび外部キーの作成

Thales CipherTrust Managerで、外部Vaultおよび外部キー・リソースを作成します。これらのリソースのネーミングは、管理しやすいようにOCIのリソースに似た名前が意図的に選択されています。これらの操作が成功すると、外部VaultエンドポイントURIと外部キーIDが生成されます。この外部キーIDは、実際のキー・マテリアルを表します。このURIおよびIDは、OCI External KMSでボールトおよび参照キーを作成するときに使用できます。

A screenshot of the Add External Vault window in the Oracle Cloud Console with the options selected and fields filled in.
図3: オプションが選択され、フィールドが入力されたThales CipherTrustの「Add External Vault」ウィンドウのスクリーンショット。

OCIでのプライベート・エンドポイントの作成

Oracle Cloudコンソールの「Key Management and Secret Management」で、External KMSにアクセスするためのプライベート・エンドポイント・リソースを作成します。

A screenshot of the Create Private Endpoint window in the Console with the fields filled in.
図4: フィールドに入力されているコンソールの「Create Private Endpoint」ウィンドウのスクリーンショット。

OCIでのVaultおよび参照キーの作成

前提条件のすべての構成ステップが完了したら、コンソールの「External Key Management」ページでVaultおよび参照キーの作成に移動できます。

A screenshot if the Create Vault window in the Console.
図5: コンソールの「Create Vault」ウィンドウのスクリーンショット。
A screenshot of the Create Key Reference window in the Console.
図6: コンソールの「Create Key Reference」ウィンドウのスクリーンショット。

キーの使用

OCI External KMSは、OCI Vaultを使用する既存のOCIアプリケーションと互換性があります。Vaultおよびマスター暗号化キーをOCIアプリケーションに関連付けるためのユーザー・インタフェースは変更されません。たとえば、データベースでのExternal KMSで作成されたキーの使用経験は以前と同じです。

A screenshot of the Create Autonomous Database screen showing the Encryption key tab.
図7: 「Encryption key」タブが表示された「Create Autonomous Database」画面のスクリーンショット。

参照キーのローテーション

マスター暗号化キーまたは参照キーをローテーションするには、最初にThales CipherTrust Managerでキーをローテーションします。Thalesに新しい外部キー・バージョンを追加するには、「Add Version」を選択します。

A screenshot of the available Oracle keys in the Key Cloud Manager in Thales CipherTrust Manager with the menu expanded.
図8: メニューが展開された「Thales CipherTrust Manager」のキー・バージョンを追加するスクリーンショット。

OCIで、「Rotate Key Reference」を選択し、前のステップの外部キー・バージョンIDを入力します。このフィールドが空の場合、External KMSはThalesの最新バージョンを自動的に使用します。

A screenshot of the Rotate Key Reference window in the Oracle Cloud Console.
図9: Oracle Cloudコンソールの「Rotate Key Reference」ウィンドウのスクリーンショット。

価格

OCI External KMSのコストは、キー・バージョン当たり月額$3であり、これらのキー・バージョンを使用するための追加コストはありません。Vault当たり10個のVaultと100個のキー・バージョンのソフト制限があります。

CipherTrust Managerの価格と制限については、Thalesにお問い合わせください。

次のステップ

OCI External KMSを使用すると、暗号化キーをOCI外部に格納し、これらのキーを使用してOCIサービスまたはアプリケーションのデータを暗号化できます。キーとその格納場所を制御することで、データ・ソブリンと規制のニーズに対処しながら、OCIにデータを移行できます。

詳細は技術ドキュメントでご覧いただけますが、最適な学習方法は試してみることです。Oracle Cloud Infrastructureのナビゲーション・メニューの「External Key Management」タブの「Identity & Security and Key Management & Secret Management」にあるOracle Cloudコンソールで、External KMSにアクセスします。