顧客管理の暗号鍵(CMEK)

このトピックでは、顧客管理の暗号鍵(CMEK)の概要と、Google Cloud の保存データを保護する鍵の制御方法について説明します。

デフォルトの暗号化

Google Cloud に保存されているすべてのデータは、Google 独自の暗号化データに使用されているのと同じ強化鍵管理システムを使用して保存時に暗号化されます。 こうした鍵管理システムでは厳密な鍵のアクセス制御と監査が行われ、AES-256 暗号化標準を使用してデータが保存時に暗号化されます。設定、構成、管理は必要ありません。Google Cloud のデフォルトの保存時の暗号化は、暗号化マテリアルのコンプライアンスや地域区分に関連する特定の要件を持たないユーザーに最適です。

顧客管理の暗号鍵(CMEK)

Google Cloud プロジェクト内のデータを保存時に暗号化するために使用する鍵をより詳細に制御する必要がある場合は、いくつかの Google Cloud サービスで、Cloud KMS 内でお客様自身が管理する暗号鍵を使用するサービスに関連するデータを保護する機能が提供されます。こうした暗号鍵は「顧客管理の暗号鍵(CMEK)」と呼ばれます。CMEK を使用して Google Cloud サービスのデータを保護すると、CMEK 鍵が制御されます。

CMEK を使用しても、必ずしも Google のデフォルトの暗号化メカニズムよりもセキュリティが高くなるわけではありません。さらに、CMEK を使用すると、Cloud KMS に関連する追加費用が発生します。CMEK を使用すると、以下のようなアビリティを含め(ただし、これに限定されない)、鍵のライフサイクルをより詳細に管理できます。

  • データを保護するために使用する鍵を無効にすることで、保存データを復号する Google の機能を制御できます。
  • 特定のロケーションや居住地の要件を満たす鍵を使用してデータを保護できます。
  • データの保護に使用するは手動で設定で鍵をローテーションできます。
  • Cloud HSM 鍵または Cloud 外部鍵マネージャー鍵を使用するか、Cloud KMS にインポートする既存の鍵を使用してデータを保護できます。

CMEK 統合

サービスで CMEK がサポートされている場合、CMEK 統合が行われていることが示されます。GKE などの一部のサービスでは、サービスに関連するさまざまな種類のデータを保護するために、複数の CMEK 統合を利用できます。

CMEK を有効にする具体的な手順については、関連する Google Cloud サービスのドキュメントをご覧ください。手順は以下のようになると見込まれます。

  1. Cloud KMS 鍵を作成またはインポートし、サービスのリソースのロケーションに可能な限り地理的に近いロケーションを選択します。 サービスと鍵は同じプロジェクトに存在することも、異なるプロジェクトに存在することもあります。 これが CMEK 鍵です。

  2. CMEK 鍵に対する暗号鍵の暗号化 / 復号の IAM ロールroles/cloudkms.cryptoKeyEncrypterDecrypter)をサービスのサービス アカウントに付与します。

  3. CMEK 鍵を使用するサービスを構成して、データを保護します。たとえば、CMEK を使用する GKE クラスタを構成して、ノードのブートディスク上の保存データを保護できます。

サービス アカウントにこのロールがある限り、サービスはそのデータを暗号化および復号できます。ロールの取り消しや、CMEK 鍵の無効化や破棄をすると、そのデータにアクセスできなくなります。

CMEK コンプライアンス

一部のサービスは、データを直接保存したり、長時間実行オペレーションの中間ステップとして、短時間だけ保存したりすることはありません。このタイプのワークロードでは、各書き込みを個別に暗号化することは実用的ではありません。こうしたサービスでは CMEK 統合は提供されませんが、CMEK コンプライアンスを実現できます。多くの場合、お客様が構成する必要はありません。

CMEK 準拠サービスは、メモリにのみ存在し、ディスクに書き込まれないエフェメラル キーを使用して一時データを暗号化します。一時データが不要になると、エフェメラル キーがメモリからフラッシュされ、ストレージ リソースがまだ存在していても、暗号化されたデータにアクセスできなくなります。

CMEK 準拠サービスでは、Cloud Storage などの CMEK 統合によりサービスに出力を送信できる場合があります。

次のステップ