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 키를 지정합니다. 실제 키 연결과 디스크 사용·복구 가능 여부도 확인해야 합니다.

참조