RDS 클러스터 저장 암호화 설정 점검

RDS 클러스터의 실제 저장 암호화와 키를 확인하고, 기존 비암호화 데이터는 지원되는 절차로 이전하세요.

설명

저장 시 암호화는 데이터베이스 저장소와 관련 백업·스냅샷을 보호합니다. 실제로 암호화하지 않은 클러스터는 이 보호 계층이 없지만, 템플릿의 값만으로 현재 저장 상태를 단정해서는 안 됩니다.

Aurora는 2026년 2월 18일부터 생성되는 새 클러스터를 기본적으로 AWS 소유 키로 암호화합니다. 이전에 암호화하지 않은 원본에서 만든 스냅샷·클론·읽기 복제본은 비암호화 상태를 유지할 수 있습니다. Aurora와 다른 RDS 클러스터 유형, 생성과 복원의 동작을 구분해 실제 상태와 키 요구사항을 확인하세요.

잠재적 영향

실제 비암호화 저장소나 백업을 무단으로 획득하면 업무 데이터가 노출될 위험이 커집니다. 데이터가 암호화되어 있다는 이유만으로 정상 권한을 가진 사용자의 조회가 차단되지는 않으며, 키 접근을 잃으면 서비스가 중단될 수 있습니다.

해결 방법

  • 새 구성에는 필요한 저장 암호화와 키를 명시하세요. 고객 관리형 키가 필요하면 StorageEncrypted: true와 적절한 KmsKeyId 및 권한을 준비하세요.
  • 기존 비암호화 Aurora 클러스터는 지원되는 스냅샷 복원 절차 등으로 새 암호화 클러스터에 이전하세요. 설정 변경으로 데이터가 자동 이전된다고 가정하지 마세요.
  • 백업을 보존하고 변경 세트, 데이터 일관성과 연결 전환을 검토하세요. 배포 후 실제 암호화·키와 데이터 접근을 확인하고 인증·TLS도 별도로 유지하세요.

예시

새 Aurora PostgreSQL 클러스터의 요청 설정을 비교합니다. DB 인스턴스와 네트워크는 별도로 구성해야 합니다. 두 예시는 마스터 비밀번호를 관리형으로 생성하며, 기존 클러스터의 데이터 이전 절차는 아닙니다.

암호화를 명시적으로 요청하지 않는 구성

yaml
Parameters:
  DBUsername:
    Type: String
Resources:
  RDSCluster:
    Type: AWS::RDS::DBCluster
    DeletionPolicy: Snapshot
    UpdateReplacePolicy: Snapshot
    Properties:
      Engine: aurora-postgresql
      MasterUsername: !Ref DBUsername
      ManageMasterUserPassword: true
      StorageEncrypted: false

현재 Aurora의 새 클러스터 기본 암호화가 있으므로 이 값만으로 평문 저장을 뜻하지 않습니다. 기존 데이터의 실제 상태를 확인하세요.

암호화와 키를 명시하는 구성

yaml
Parameters:
  DBUsername:
    Type: String
  DatabaseKmsKeyArn:
    Type: String
Resources:
  RDSCluster:
    Type: AWS::RDS::DBCluster
    DeletionPolicy: Snapshot
    UpdateReplacePolicy: Snapshot
    Properties:
      Engine: aurora-postgresql
      MasterUsername: !Ref DBUsername
      ManageMasterUserPassword: true
      StorageEncrypted: true
      KmsKeyId: !Ref DatabaseKmsKeyArn

같은 리전에서 사용할 수 있는 실제 KMS 키 ARN과 필요한 권한을 제공하세요. 스냅샷 보존은 데이터 복원과 애플리케이션 전환을 대신하지 않습니다.

참조