Cloud Build は、ビルドごとに生成されたエフェメラルキーでビルド時間の永続ディスクを暗号化することで、顧客管理の暗号鍵(CMEK)コンプライアンスを実現します。構成は不要です。ビルドごとに固有の鍵が生成されます。
ビルドの開始後、最大 24 時間、その鍵を必要とするビルドプロセスのみが鍵にアクセスできます。その後、鍵はメモリから消去され、破棄されます。
鍵はどこにも保持されず、Google のエンジニアやサポートスタッフはアクセスできず、復元もできません。このような鍵を使用して保護されたデータには、ビルドが完了すると永続的にアクセスできなくなります。
エフェメラル キー暗号化の仕組み
Cloud Build では、エフェメラル キーを使用して CMEK をサポートし、CMEK に対応したセットアップとの一貫性、互換性を完璧に実現します。
Cloud Build は、ビルド時間の永続ディスクがエフェメラル キーで暗号化されるように次の処理を行います。
Cloud Build は、256 ビットのランダムな暗号鍵を作成し、各ビルド時間の永続ディスクを暗号化します。
Cloud Build は、永続ディスクの顧客指定の暗号鍵(CSEK)機能を活用して、新しい暗号鍵を永続ディスク暗号鍵として使用します。
ディスクが作成されるとすぐに、Cloud Build はエフェメラル キーを破棄します。鍵は永続ストレージには記録されず、復旧できなくなります。
ビルドが完了すると、永続ディスクが削除され、鍵の痕跡も暗号化された永続ディスクデータも Google インフラストラクチャ内に残りません。
エフェメラル キー暗号化が適用されないケース
(GitHub トリガーからではなく)ソース ミラーリングを使用してビルドを作成またはトリガーすると、ソースコードは Cloud Storage または Cloud Source Repositories に保存されます。暗号化の管理など、コードの保存場所を完全に制御できます。