Cloud External Key Manager

このトピックでは、Cloud External Key Manager(Cloud EKM)の概要を説明します。外部鍵を作成して管理するには、Cloud EKM 鍵の管理をご覧ください。

概要

Cloud EKM では、サポートされる外部鍵管理パートナー内で管理する鍵を使用して、Google Cloud 内のデータを保護できます。BigQuery または Compute Engine の永続ストレージ内に保存するか、Cloud Key Management Service API を直接呼び出して、データを保護できます。

Cloud EKM には次のような利点があります。

  • 鍵の来歴: 外部で管理される鍵の場所と分布を制御できます。外部で管理される鍵が Google Cloud 内にキャッシュまたは保存されることはありません。代わりに、Cloud EKM はリクエストごとに外部の鍵管理パートナーと直接やり取りします。

  • アクセス制御: 外部で管理する鍵へのアクセスを管理します。外部管理の鍵を使用して Google Cloud のデータを暗号化または復号するには、その鍵を使用するためのアクセス権を Google Cloud プロジェクトに付与する必要があります。付与したアクセス権の取り消しはいつでも可能です。

  • 一元化された鍵管理: 保護対象のデータがクラウド上にあるか施設内にあるかにかかわらず、鍵とアクセス ポリシーを 1 つの場所と管理画面から管理できます。

いずれの場合でも、鍵はすべて外部システムに存在し、Google に送信されることはありません。

サポートされるキーマネージャー

外部鍵は、次の外部鍵管理パートナーシステムに保存できます。

仕組み

このセクションでは、Cloud EKM と外部鍵が連携する仕組みの概要を説明します。手順に沿って Cloud EKM 鍵を作成することもできます。

  1. まず、サポートされる外部鍵管理パートナー システムで既存の鍵を作成または使用します。この鍵には一意の URI があります。
  2. 次に、外部の鍵管理パートナー システムで Google Cloud プロジェクトに鍵を使用するためのアクセス権を付与します。
  3. Google Cloud プロジェクトでは、外部管理された鍵の URI を使用して Cloud EKM 鍵を作成します。

その鍵は、Google Cloud 内では、他の Cloud KMS 鍵と Cloud HSM 鍵の横に保護レベル EXTERNAL で表示されます。クラウド EKM 鍵と外部鍵管理パートナー鍵は連携してデータを保護します。外部鍵は Google に公開されません。

次の図は、鍵管理モデルにおける Cloud KMS の位置づけを表しています。

Cloud EKM による暗号化と復号化を説明する図

Cloud EKM を使用する際の考慮事項制限事項を確認できます。

次のステップ

考慮事項

  • Cloud EKM 鍵を使用する場合、Google は外部の鍵管理パートナー システム内の外部管理鍵の可用性をコントロールできません。Google Cloud の外で管理している鍵を紛失した場合、Google はデータを復元できません。

  • Cloud EKM 鍵のロケーションを選択する際は、外部鍵管理のパートナーとリージョンのガイドラインを確認します。

  • Cloud EKM サービスレベル契約(SLA)を確認します。

  • インターネット経由で外部サービスと通信すると、信頼性、可用性、レイテンシに問題が発生する場合があります。こうしたリスクに対する許容度が低いアプリケーションについては、Cloud HSM または Cloud KMS を使用して鍵マテリアルを保存することを検討してください。

    • 外部鍵が使用できない場合、Cloud KMS により FAILED_PRECONDITION エラーが返され、PreconditionFailure エラーの詳細にその内容が入ります。

      データ監査ロギングを有効にすると、Cloud EKM に関連するすべてのエラーの記録が保持されます。エラー メッセージには、原因を特定するための詳細情報が含まれています。よく発生するエラーの例は、外部鍵管理パートナーが適切な時間内にリクエストに応答しないというものです。

    • 外部の鍵管理パートナーとのサポート契約が必要になります。Google Cloud サポートは、Google Cloud サービスの問題のみをサポートし、外部システムの問題を直接サポートすることはできません。相互運用性の問題のトラブルシューティングを行うには、双方からのサポートが必要になる場合があります。

制限

  • 対称鍵のみがサポートされています:
  • 外部管理の鍵を使用して Cloud EKM により暗号化されたデータは、Cloud EKM を使用しないと復号できません。
  • 自動ローテーションはサポートされていません。
  • API または gcloud コマンドライン ツールを使用して Cloud EKM 鍵を作成する場合、初期鍵バージョンを含めないでください。これは、Cloud Console を使用して作成された Cloud EKM 鍵には適用されません。
  • Cloud EKM オペレーションは、Cloud KMS オペレーションの割り当てに加えて特定の割り当ての対象です。

外部のキー マネージャーとリージョン

クラウド EKM はエラーを回避するために、鍵にすぐにアクセスできる必要があります。Cloud EKM 鍵を作成するときは、外部の鍵管理パートナー鍵のロケーションに地理的に近い Google Cloud のロケーションを選択します。パートナーのロケーションの可用性については、パートナーのドキュメントをご覧ください。

global を除き、Cloud EKM は、Cloud KMS がサポートされている Google Cloud のどのロケーションでも使用できます。

外部鍵管理パートナーのドキュメントを参照して、サポートされているロケーションを確認してください。

マルチリージョンでの使用

マルチリージョンで外部管理の鍵を使用する場合、外部鍵管理パートナーとの通信に必要な情報など、鍵のメタデータはマルチリージョン内の複数のデータセンターで使用できます。アプリケーションがマルチリージョン内の別のデータセンターにフェイルオーバーすると、新しいデータセンターにより鍵リクエストが開始されます。新しいデータセンターは、外部鍵管理パートナーからの距離やタイムアウトの可能性など、以前のデータセンターとはネットワークの特性が異なる場合があります。外部の鍵管理パートナーが利用可能な Cloud EKM マルチリージョンのレベルに対応している場合に限り、Cloud EKM でマルチリージョンを使用することをおすすめします。

Cloud EKM 用の API の追加

Cloud EKM をサポートするために、Cloud Key Management Service API に次の変更が加えられました。

  • EXTERNAL が新しい列挙値として ProtectionLevel に追加されました。
  • CryptoKeyVersion に新しく ExternalProtectionLevelOptions フィールド タイプが追加されました。このフィールド タイプは、externalKeyUriという新しいフィールドを含んでいます。
  • 新しい CryptoKeyVersionAlgorithm として EXTERNAL_SYMMETRIC_ENCRYPTIONが追加されました。