Cloud Build における CMEK コンプライアンス

Cloud Build は、ビルドごとに生成されたエフェメラルキーでビルド時間の永続ディスクを暗号化することで、顧客管理の暗号鍵(CMEK)コンプライアンスを実現します。構成は不要です。ビルドごとに固有の鍵が生成されます。

ビルドの開始後、最大 24 時間、その鍵を必要とするビルドプロセスのみが鍵にアクセスできます。その後、鍵はメモリから消去され、破棄されます。

鍵はどこにも保持されず、Google のエンジニアやサポートスタッフはアクセスできず、復元もできません。このような鍵を使用して保護されたデータには、ビルドが完了すると永続的にアクセスできなくなります。

エフェメラル キー暗号化の仕組み

Cloud Build では、エフェメラル キーを使用して CMEK をサポートし、CMEK に対応したセットアップとの一貫性、互換性を完璧に実現します。

Cloud Build は、ビルド時間の永続ディスクがエフェメラル キーで暗号化されるように次の処理を行います。

  1. Cloud Build は、256 ビットのランダムな暗号鍵を作成し、各ビルド時間の永続ディスクを暗号化します。

  2. Cloud Build は、永続ディスクの顧客指定の暗号鍵(CSEK)機能を活用して、新しい暗号鍵を永続ディスク暗号鍵として使用します。

  3. ディスクが作成されるとすぐに、Cloud Build はエフェメラル キーを破棄します。鍵は永続ストレージには記録されず、復旧できなくなります。

  4. ビルドが完了すると、永続ディスクが削除され、鍵の痕跡も暗号化された永続ディスクデータも Google インフラストラクチャ内に残りません。

エフェメラル キー暗号化が適用されないケース

(GitHub トリガーからではなく)ソース ミラーリングを使用してビルドを作成またはトリガーすると、ソースコードは Cloud Storage または Cloud Source Repositories に保存されます。暗号化の管理など、コードの保存場所を完全に制御できます。