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