저장 데이터 암호화가 비활성화된 Neptune 데이터베이스 클러스터

Neptune 저장 데이터와 백업을 암호화하고 기존 클러스터는 복원과 전환을 계획하세요.

설명

Neptune의 저장 시 암호화는 그래프 데이터와 관련 로그, 백업, 스냅샷을 보호합니다. 암호화하지 않은 클러스터에는 기반 저장소에 대한 무단 접근에 대비하는 이 보호 계층이 없습니다. CloudWatch로 내보낸 로그의 암호화는 별도로 설정해야 합니다.

저장 암호화와 IAM 데이터베이스 인증은 서로 다른 보호 기능입니다. 저장 암호화가 켜져 있어도 필요한 사용자와 애플리케이션만 데이터에 접근하도록 권한과 네트워크를 제한해야 합니다.

잠재적 영향

저장 데이터나 백업이 무단으로 획득되면 그래프에 포함된 개인정보나 업무 관계가 노출될 위험이 커집니다. 조직의 저장 데이터 보호 요구사항을 충족하지 못할 수도 있습니다.

해결 방법

새 클러스터에는 StorageEncrypted: true를 설정하세요. 별도 KMS 키가 필요하면 생성 전에 키와 권한을 준비하고, 기본 키 사용이 적합한지도 확인하세요. 키 접근을 잃으면 데이터베이스 운영이 중단될 수 있으므로 키와 백업을 보호하세요.

기존 비암호화 클러스터를 직접 암호화할 수는 없습니다. 스냅샷을 새 암호화 클러스터로 복원할 때 KMS 키를 지정하는 등 지원되는 이전 절차를 사용하세요. 원본 데이터를 보존하고 데이터 일관성, 새 연결 주소와 애플리케이션 전환을 검증하세요.

예시

새 클러스터의 생성 설정을 비교합니다. DB 인스턴스, 서브넷과 보안 그룹은 별도로 구성해야 합니다. 스냅샷 보존 정책은 백업을 남기지만 데이터 이전과 서비스 전환을 수행하지는 않습니다.

변경 전

yaml
Resources:
  NeptuneDBCluster:
    Type: AWS::Neptune::DBCluster
    DeletionPolicy: Snapshot
    UpdateReplacePolicy: Snapshot
    Properties:
      IamAuthEnabled: true
      Port: 8182
      StorageEncrypted: false

IAM 인증을 활성화해도 저장 시 암호화가 대신 활성화되지는 않습니다.

변경 후

yaml
Resources:
  NeptuneDBCluster:
    Type: AWS::Neptune::DBCluster
    DeletionPolicy: Snapshot
    UpdateReplacePolicy: Snapshot
    Properties:
      IamAuthEnabled: true
      Port: 8182
      StorageEncrypted: true

저장 시 암호화를 활성화합니다. 키를 별도로 지정하지 않으면 리전의 기본 Neptune 암호화 키인 aws/rds를 사용합니다.

참조