Compute Engine ディスクの暗号鍵管理の確認

既定の保存時暗号化と顧客による鍵の管理を区別し、必要な鍵管理ポリシーを適用してください。

説明

Compute Engine のディスクは既定で保存時に暗号化されます。diskEncryptionKey に顧客指定の鍵(CSEK)や顧客管理の鍵(CMEK)を指定していなくても、平文で保存されるわけではありません。

重要な VM や規制対象のデータでは、鍵の管理者と利用権限を別途制御する必要がある場合があります。その要件に合わせて顧客による鍵管理を設計してください。

想定される影響

  • 既定の鍵管理だけでは、組織の鍵統制や監査要件を満たさない場合があります。
  • 鍵の紛失や利用権限の誤った制限により、ディスクの利用や復旧が停止する可能性があります。

対処方法

  • 顧客の鍵が必要な場合は、diskEncryptionKey に実際の kmsKeyName または安全に保管した rawKey を構成してください。公開テンプレートやログに生の鍵を残さないでください。
  • 鍵のロケーションと Compute Engine サービスエージェントの利用権限を確認し、復旧手順を用意してください。既存ディスクの鍵の移行は、サポートされるコピー・移行手順に従って計画してください。

例

サポートが終了した Deployment Manager 形式のディスク設定の抜粋です。現在サポートされているツールでイメージやゾーンなどの省略した VM 設定を用意し、例の KMS 名を互換性のあるロケーションと利用権限を備えた実際の鍵に置き換えてください。

変更前

yaml
resources:
  - name: vm-template
    type: compute.v1.instance
    properties:
      disks:
        - boot: true
          autoDelete: true

変更後

yaml
resources:
  - name: vm-template
    type: compute.v1.instance
    properties:
      disks:
        - boot: true
          autoDelete: true
          diskEncryptionKey:
            kmsKeyName: projects/sample/locations/global/keyRings/ring/cryptoKeys/key

説明:

  • 変更前: 顧客の鍵を指定していません。保存時の暗号化がないことを意味しません。
  • 変更後: 顧客管理の KMS 鍵を指定します。実際の鍵の関連付けと、ディスクの利用・復旧が可能かも確認する必要があります。

参考資料