Redshift 암호화 설정 확인 필요

실제 Redshift 클러스터와 스냅샷의 암호화를 확인하고, 지원되는 도구로 필요한 KMS 암호화를 적용하세요.

설명

Redshift 저장 데이터 암호화는 데이터베이스와 관련 스냅샷을 보호합니다. 현재 새 프로비저닝 클러스터의 CreateCluster API는 기본적으로 암호화를 사용하며 명시적인 Encrypted: false를 거부합니다. 이 기본값 변경을 기존 클러스터나 스냅샷 복원에 그대로 적용해서는 안 됩니다. 실제 리소스의 암호화 상태를 확인하세요.

기존 비암호화 클러스터에는 지원되는 KMS 암호화 전환을 적용할 수 있습니다. AWS가 암호화된 새 클러스터로 데이터를 이전하는 과정을 관리하므로, 키 권한과 서비스 영향을 고려해 변경을 계획해야 합니다.

잠재적 영향

  • 기존 비암호화 클러스터와 스냅샷은 조직의 저장 데이터 암호화 요구 사항을 충족하지 못할 수 있습니다.
  • 지원되지 않는 옵션이나 도구로 변경하면 배포가 실패하거나 실제 암호화 상태가 그대로 남을 수 있습니다.

해결 방법

  • 실제 클러스터와 관련 스냅샷의 암호화, KMS 키와 사용 권한을 확인하세요. 새 클러스터에는 현재 API의 암호화 요구 사항을 적용하세요.
  • 기존 클러스터는 암호화 변경을 지원하는 도구나 ModifyCluster API로 전환하세요. community.aws 1.5.0의 수정 작업은 encrypted를 전달하지 않으므로 옵션만 추가해서는 암호화되지 않습니다.
  • 스냅샷 처리와 서비스 영향을 검토한 뒤 변경하고, 완료 후 실제 암호화와 데이터 접근을 검증하세요. 네트워크·DB 권한과 TLS도 별도로 유지하세요.

예시

비밀번호는 안전하게 관리하는 변수로 제공하고, redshift_node_type에는 설치한 community.aws 모듈과 해당 리전에서 지원하며 단일 노드 구성에 사용할 수 있는 유형을 지정하세요. 네트워크·인증 설정은 실제 환경에 맞게 구성해야 합니다.

현재 API가 거부하는 암호화 비활성화

yaml
- name: Basic cluster provisioning example
  community.aws.redshift:
    identifier: tf-redshift-cluster
    command: create
    db_name: mydb
    username: foo
    password: "{{ redshift_admin_password }}"
    node_type: "{{ redshift_node_type }}"
    cluster_type: single-node
    encrypted: false

명시적인 encrypted: false는 현재 생성 API에서 거부됩니다. 이 예시는 비암호화 클러스터를 만드는 배포 절차가 아닙니다.

새 클러스터 암호화 요청

yaml
- name: Basic cluster provisioning example
  community.aws.redshift:
    identifier: tf-redshift-cluster
    command: create
    db_name: mydb
    username: foo
    password: "{{ redshift_admin_password }}"
    node_type: "{{ redshift_node_type }}"
    cluster_type: single-node
    encrypted: true

새 클러스터 생성 시 암호화를 명시적으로 요청합니다. 기존 클러스터의 암호화 전환에는 앞서 설명한 지원되는 변경 절차가 필요합니다.

참조