이 페이지에서는 Memorystore for Redis Cluster에서 고객 관리 암호화 키 (CMEK)가 작동하는 방식을 설명합니다. 이 기능을 즉시 사용하려면 고객 관리 암호화 키 (CMEK) 사용을 참고하세요.
CMEK는 누가 사용해야 하나요?
CMEK는 자체 암호화 키를 관리해야 하는 민감한 정보 또는 규제 대상 데이터가 있는 조직을 위한 것입니다.
Google 관리 암호화와 고객 관리 암호화 비교
CMEK 기능을 사용하면 Memorystore for Redis Cluster의 저장 데이터에 자체 암호화 키를 사용할 수 있습니다. CMEK가 사용 설정된 Memorystore for Redis Cluster 인스턴스의 경우 Google은 사용자의 키를 사용하여 모든 저장 데이터에 액세스합니다.
Memorystore는 Google 관리 데이터 암호화 키 (DEK)와 키 암호화 키 (KEK)를 사용하여 Memorystore for Redis 클러스터의 데이터를 암호화합니다. 암호화에는 두 가지 수준이 있습니다.
- DEK 암호화: Memorystore는 DEK를 사용하여 Memorystore for Redis 클러스터의 데이터를 암호화합니다.
- KEK 암호화: Memorystore는 KEK를 사용하여 DEK를 암호화합니다.
Memorystore for Redis 클러스터 인스턴스는 암호화된 데이터와 함께 암호화된 DEK를 디스크에 저장하고 Google은 Google KEK를 관리합니다. CMEK를 사용하면 Google KEK를 래핑하는 키를 만들 수 있습니다. CMEK를 사용하면 KEK를 만들고, 사용 중지하거나 폐기하고, 순환하고, 사용 설정하거나 복원할 수 있습니다.
다음 다이어그램은 기본 Google 관리 암호화를 사용하는 경우와 CMEK를 사용하는 경우에 Memorystore for Redis 클러스터 인스턴스 내부에서 저장 데이터 암호화가 작동하는 방식을 보여줍니다.
CMEK를 사용하지 않는 경우
CMEK를 사용하는 경우
CMEK로 래핑된 데이터를 복호화할 때 Memorystore는 Cloud Key Management Service의 KEK를 사용하여 DEK를 복호화하고 암호화되지 않은 DEK를 사용하여 저장 데이터를 복호화합니다.
가격 책정
Memorystore for Redis 클러스터는 다른 클러스터와 마찬가지로 CMEK 지원 클러스터에 대해 요금을 청구하며 추가 비용은 없습니다. 자세한 내용은 Memorystore for Redis Cluster 가격 책정을 참고하세요.
Cloud KMS API를 사용하여 CMEK를 관리합니다. CMEK를 사용하여 Redis용 Memorystore 클러스터 인스턴스를 만들면 Memorystore는 키를 주기적으로 사용하여 데이터를 암호화하여 키의 권한이 올바르고 키가 사용 설정되어 있는지 확인합니다.
Memorystore for Redis Cluster가 키를 사용하는 경우 키 비용과 암호화 및 복호화 작업에 대해 Cloud KMS에서 비용이 청구됩니다. 자세한 내용은 Cloud KMS 가격 책정을 참조하세요.
CMEK를 사용하여 어떤 데이터를 암호화하나요?
CMEK는 영구 스토리지에 저장된 다음 유형의 고객 데이터를 암호화합니다.
- 백업: 백업을 사용하면 데이터를 특정 시점으로 복구하고 데이터를 내보내 분석할 수 있습니다. 백업은 재해 복구, 데이터 이전, 데이터 공유, 규정 준수 시나리오에도 유용합니다.
- 영속성: Memorystore for Redis Cluster는 다음 두 가지 유형의 영속성을 지원합니다.
- RDB 지속성: Redis 데이터베이스 (RDB) 기능은 내구성 있는 스토리지에 데이터 스냅샷을 저장하여 데이터를 보호합니다.
- AOF 지속성: 이 기능은 데이터 내구성을 우선시합니다. 모든 쓰기 명령어를 추가 전용 파일 (AOF)이라는 로그 파일에 기록하여 데이터를 내구성 있게 저장합니다. 시스템 장애나 재시작이 발생하면 서버가 AOF 파일 명령어를 순차적으로 재생하여 데이터를 복원합니다.
서비스 계정 정보
CMEK로 인스턴스를 만들 때 다음 형식의 Memorystore for Redis Cluster 서비스 계정에 cloudkms.cryptoKeyEncrypterDecrypter 역할을 부여해야 합니다.
service-[PROJECT_NUMBER]@cloud-redis.iam.gserviceaccount.com
이 권한을 부여하면 서비스 계정이 Cloud KMS에서 키 액세스를 요청할 수 있습니다.
서비스 계정에 이 권한을 부여하는 방법은 Memorystore for Redis 클러스터 서비스 계정에 키에 대한 액세스 권한 부여를 참고하세요.
키 정보
Cloud KMS에서는 대칭 암호화 알고리즘을 사용하는 암호화 키로 키링을 만들어야 합니다. 새 Redis용 Memorystore 클러스터 인스턴스를 만들 때 이 키를 선택하여 인스턴스를 암호화합니다. 키와 인스턴스 모두에 대해 하나의 프로젝트를 만들거나 각각에 대해 서로 다른 프로젝트를 만들 수 있습니다.
CMEK는 모든 Memorystore for Redis Cluster 인스턴스 위치에서 사용할 수 있습니다. 키 및 키링 리전을 인스턴스와 동일한 리전으로 설정해야 합니다. 멀티 리전 또는 전역 리전 키는 작동하지 않습니다. 리전이 일치하지 않으면 인스턴스 생성 요청이 실패합니다.
CMEK는 다음 형식을 사용합니다.
projects/[CMEK_ENABLED_PROJECT]/locations/[REGION]/keyRings/[KEY_RING_NAME]/cryptoKeys/[KEY_NAME]
CMEK로 암호화된 데이터에 영구적으로 액세스할 수 없도록 하려면 어떻게 해야 하나요?
CMEK로 암호화된 데이터를 영구적으로 폐기하려는 경우가 있을 수 있습니다. 이렇게 하려면 키 버전을 삭제합니다. 키링이나 키를 삭제할 수 없지만 키의 버전을 삭제할 수 있습니다.
CMEK 키 버전의 동작
이 섹션에서는 키 버전을 사용 중지, 폐기, 순환, 사용 설정, 복원할 때 발생하는 상황에 관한 정보를 제공합니다.
CMEK 키 버전 사용 중지 또는 폐기
CMEK의 기본 키 버전을 사용 중지하거나 삭제하면 백업 및 지속성에 다음 조건이 적용됩니다.
백업
- 주문형 또는 자동 백업을 만들 수 없습니다. 하지만 이전 키 버전을 사용 설정하면 이 키 버전을 사용하여 만든 백업에 액세스할 수 있습니다.
- 기본 키 버전을 사용 설정하거나 복원해야 자동 백업을 업데이트하거나 다시 사용 설정할 수 있습니다.
지속성
- 영속성을 사용 설정하면 Memorystore for Redis 클러스터가 유지관리에 사용되는 것과 유사한 업데이트를 실행하고 영속성 기능을 사용 중지합니다. 이 기능에 대한 요금이 더 이상 청구되지 않습니다.
- Redis용 Memorystore 클러스터는 CMEK를 사용하여 새 데이터를 영구 저장소에 플러시하지 않습니다.
- Memorystore for Redis 클러스터는 영구 저장소에 있는 기존 데이터를 읽을 수 없습니다.
- 기본 키 버전을 사용 설정하거나 복원할 때까지 지속성을 업데이트하거나 다시 사용 설정할 수 없습니다.
CMEK의 기본 키 버전을 사용 설정했지만 이전 키 버전을 사용 중지하거나 폐기한 경우 백업 및 지속성에 다음 조건이 적용됩니다.
- 백업을 만들 수 있습니다. 하지만 사용 중지되거나 폐기된 이전 키 버전으로 백업이 암호화된 경우 백업에 액세스할 수 없습니다.
- 지속성을 사용 설정하면 이 기능이 사용 설정된 상태로 유지됩니다. 영속성에서 사용되는 이전 키 버전이 사용 중지되거나 폐기되면 Redis용 Memorystore 클러스터는 유지관리에 사용되는 것과 유사한 업데이트를 실행하고 기본 키 버전으로 데이터를 다시 암호화합니다.
기본 CMEK 키 버전 순환
CMEK의 기본 키 버전을 순환하고 새 기본 키 버전을 만드는 경우 백업 및 영속성에 다음 조건이 적용됩니다.
- CMEK의 최신 기본 키 버전이 새 백업을 암호화합니다.
- 기존 백업의 경우 다시 암호화가 실행되지 않습니다.
- 영속성의 경우 VM은 아무 작업도 수행하지 않습니다. VM은 다음 유지보수 이벤트까지 이전 키 버전을 계속 사용합니다.
기본 CMEK 키 버전 사용 설정 또는 복원
CMEK의 기본 키 버전을 사용 설정하거나 복원하는 경우 백업 및 지속성에 다음 조건이 적용됩니다.
- 주문형 백업과 자동 백업을 다시 만들 수 있습니다.
- Redis용 Memorystore 클러스터는 유지관리에 사용되는 업데이트와 유사한 업데이트를 실행하고 영속성을 다시 사용 설정합니다.
제한사항
Redis용 Memorystore Cluster에서 CMEK를 사용할 때는 다음 제한사항이 적용됩니다.
- 기존 Redis용 Memorystore 클러스터 배포에는 CMEK를 사용 설정할 수 없습니다.
- 키, 키링, 인스턴스의 리전은 모두 동일해야 합니다.
- 키에 대칭 암호화 알고리즘을 사용해야 합니다.
- Cloud KMS 암호화 및 복호화 비율에는 할당량이 적용됩니다.