설명
검색 도메인에는 로그, 운영 데이터, 애플리케이션 인덱스가 저장될 수 있습니다. 저장 암호화 상태와 사용 중인 키가 조직의 요구사항에 맞는지 함께 확인하세요.
encrypt_at_rest가 활성화된 상태에서 kms_key_id를 생략하면 Terraform AWS 공급자 v6.14.0 문서상 기본 aws/es 서비스 KMS 키를 사용합니다. 키 식별자가 없다는 이유만으로 암호화되지 않았다고 볼 수 없습니다. 키 정책과 수명 주기를 조직이 직접 통제해야 한다면 고객 관리형 키를 선택하세요.
잠재적 영향
기본 키만으로 조직의 권한 분리·키 관리 요구사항을 충족하지 못할 수 있습니다. 반대로 사용 중인 키를 비활성화하거나 삭제하면 도메인 데이터에 접근하지 못할 수 있습니다. 키 선택이 데이터 접근 정책이나 네트워크 통제를 대신하지는 않습니다.
해결 방법
- 실제 암호화 상태와 키를 확인하세요. 고객 관리형 키가 필요하면
kms_key_id에 승인된 대칭 KMS 키 ARN을 지정하고 서비스에 필요한 권한을 부여하세요. - 암호화된 도메인의 키를 다른 키로 직접 바꿀 수는 없습니다. Terraform의 리소스 교체와 데이터 이전 계획을 확인하고 원본 데이터와 복구 수단을 보존하세요.
- 키 비활성화·삭제 권한을 제한하고 필요한 데이터 접근과 복구를 검증하세요.
예시
암호화 설정의 발췌입니다. 새 도메인의 저장 암호화를 지원하는 Elasticsearch 5.1 이상 버전과 인스턴스 유형을 선택하고, 필요한 스토리지·접근 정책·네트워크 설정은 별도로 구성하세요. 키 변수에는 실제 사용할 키 ARN을 입력하세요.
기본 서비스 키 사용
hcl
resource "aws_elasticsearch_domain" "search_domain" {
domain_name = "example"
elasticsearch_version = var.elasticsearch_version
encrypt_at_rest {
enabled = true
}
}
저장 암호화를 활성화하고 기본 서비스 키를 사용합니다. 암호화되지 않은 예시는 아닙니다.
고객 관리형 키 지정
hcl
resource "aws_elasticsearch_domain" "search_domain" {
domain_name = "example"
elasticsearch_version = var.elasticsearch_version
encrypt_at_rest {
enabled = true
kms_key_id = var.encryption_key_arn
}
}
새 도메인에 사용할 키를 명시합니다. 기존 도메인에 바로 적용해도 데이터를 유지한 채 키만 바뀌는 것은 아닙니다.