저장 시 암호화가 비활성화된 Elasticsearch 도메인

Elasticsearch의 저장 인덱스와 관련 데이터를 암호화하고 별도 사본도 보호하세요.

설명

Elasticsearch 도메인의 저장 시 암호화는 인덱스, 애플리케이션 데이터와 자동 스냅샷 등을 KMS 키로 보호합니다. 검색 데이터에 운영 로그나 고객 정보가 포함된다면 이 보호가 중요합니다. 암호화는 검색 API를 통해 허용된 데이터 접근을 막지 않으므로 인증과 접근 정책도 필요합니다.

잠재적 영향

저장 시 암호화를 사용하지 않으면 저장된 데이터가 무단으로 획득될 때 노출 위험이 커집니다. 조직에서 요구하는 저장 데이터 보호 기준을 충족하지 못할 수도 있습니다.

해결 방법

지원되는 엔진 버전과 인스턴스 유형에서 EncryptionAtRestOptions.Enabled: true와 적절한 KmsKeyId를 지정하세요. 기존 Elasticsearch 도메인에서 암호화를 켜려면 6.7 이상 등 서비스의 업데이트 조건을 충족해야 합니다. 변경 계획과 복구 수단을 검토한 뒤 실제 암호화 상태를 확인하세요.

활성화한 저장 시 암호화는 끌 수 없으며 사용 중인 키의 비활성화·삭제는 데이터 접근을 중단시킬 수 있습니다. 필요한 키 권한을 유지하고, 수동 스냅샷 저장소와 외부로 내보낸 로그도 별도로 보호하세요.

예시

암호화와 인스턴스 유형을 지원하는 Elasticsearch 버전을 입력합니다. 변경 후에는 승인된 실제 KMS 키 ID 또는 ARN도 지정합니다. 접근 정책과 네트워크 구성은 별도로 필요하며, 이 설정만으로 전체 도메인 보안이 완성되는 것은 아닙니다.

변경 전

yaml
Parameters:
  ElasticsearchVersion:
    Type: String
Resources:
  ElasticsearchDomain:
    Type: AWS::Elasticsearch::Domain
    Properties:
      DomainName: test
      ElasticsearchVersion: !Ref ElasticsearchVersion
      ElasticsearchClusterConfig:
        InstanceType: t3.small.elasticsearch
      EncryptionAtRestOptions:
        Enabled: false
      EBSOptions:
        EBSEnabled: true
        VolumeSize: 20
        VolumeType: gp2

변경 후

yaml
Parameters:
  ElasticsearchVersion:
    Type: String
  EncryptionKeyId:
    Type: String
Resources:
  ElasticsearchDomain:
    Type: AWS::Elasticsearch::Domain
    Properties:
      DomainName: test
      ElasticsearchVersion: !Ref ElasticsearchVersion
      ElasticsearchClusterConfig:
        InstanceType: t3.small.elasticsearch
      EncryptionAtRestOptions:
        Enabled: true
        KmsKeyId: !Ref EncryptionKeyId
      EBSOptions:
        EBSEnabled: true
        VolumeSize: 20
        VolumeType: gp2

참조