View a markdown version of this page

Amazon DocumentDB 저장 데이터 암호화 - Amazon DocumentDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon DocumentDB 저장 데이터 암호화

참고

AWS KMS 는 고객 마스터 키(CMK)라는 용어를 AWS KMS keyKMS 키로 대체합니다. 단, 개념은 바뀌지 않았습니다. 주요 변경 사항을 방지하기 위해 AWS KMS 는이 용어의 몇 가지 변형을 유지합니다.

클러스터를 생성할 때 스토리지 암호화 옵션을 지정하여 Amazon DocumentDB 클러스터의 저장 데이터를 암호화합니다. 스토리지 암호화는 클러스터 전반에서 활성화되고 기본 인스턴스와 복제본을 포함한 모든 인스턴스에 적용됩니다. 또한 클러스터의 스토리지 볼륨, 데이터, 인덱스, 로그, 자동 백업 및 스냅샷에도 적용됩니다.

Amazon DocumentDB는 256비트 고급 암호화 표준(AES-256)을 사용하여 AWS Key Management Service ()에 저장된 암호화 키를 사용하여 데이터를 암호화합니다AWS KMS. 정지 상태의 암호화를 사용하도록 설정한 상태에서 Amazon DocumentDB 클러스터를 사용할 때는 응용프로그램 로직이나 클라이언트 연결을 수정할 필요가 없습니다. Amazon DocumentDB는 성능에 미치는 영향을 최소화하면서 데이터의 암호화 및 복호화를 투명하게 처리합니다.

Amazon DocumentDB는와 통합 AWS KMS 되며 봉투 암호화라는 메서드를 사용하여 데이터를 보호합니다. Amazon DocumentDB 클러스터가 로 암호화되면 AWS KMS Amazon DocumentDB는 KMS 키를 AWS KMS 사용하여 암호화 텍스트 데이터 키를 생성하여 스토리지 볼륨을 암호화하도록 요청합니다. 사이퍼텍스트 키는 사용자가 정의한 KMS 키를 사용하여 암호화되며, 암호화된 데이터 및 저장 메타데이터와 함께 저장됩니다. Amazon DocumentDB는 암호화된 데이터에 액세스해야 하는 경우 KMS 키를 사용하여 암호화 텍스트 데이터 키를 해독 AWS KMS 하도록 요청하고 일반 텍스트 데이터 키를 메모리에 캐시하여 스토리지 볼륨의 데이터를 효율적으로 암호화하고 해독합니다.

Amazon DocumentDB의 스토리지 암호화 기능은 지원되는 모든 인스턴스 크기와 Amazon DocumentDB를 사용할 수 AWS 리전 있는 모든에서 사용할 수 있습니다.

Amazon DocumentDB 클러스터에 대해 중지 상태의 암호화 사용

또는 AWS Command Line Interface ()를 사용하여 클러스터를 프로비저닝할 때 Amazon DocumentDB 클러스터에서 저장 시 암호화를 활성화 AWS Management Console 하거나 비활성화할 수 있습니다AWS CLI. 콘솔을 사용하여 만든 클러스터는 기본적으로 유휴 데이터 암호화가 활성화되어 있습니다. 를 사용하여 생성하는 클러스터 AWS CLI 에는 기본적으로 유휴 시 암호화가 비활성화되어 있습니다. 따라서 --storage-encrypted 파라미터를 사용하여 유휴 데이터 암호화를 명시적으로 활성화해야 합니다. 두 경우 모두 클러스터를 만든 후에는 유휴 데이터 암호화 옵션을 변경할 수 없습니다.

Amazon DocumentDB는 AWS KMS 를 사용하여 암호화 키를 검색 및 관리하고 이러한 키를 사용하는 방법을 제어하는 정책을 정의합니다. AWS KMS 키 식별자를 지정하지 않으면 Amazon DocumentDB는 기본 AWS 관리형 서비스 KMS 키를 사용합니다. Amazon DocumentDB는의 각 AWS 리전 에 대해 별도의 KMS 키를 생성합니다 AWS 계정. 자세한 내용은 AWS Key Management Service 개념을 참조하세요.

자체 KMS 키 생성을 시작하려면 AWS Key Management Service 개발자 안내서시작하기를 참조하세요.

중요

Amazon DocumentDB는 대칭 암호화 KMS 키만 지원하므로 클러스터를 암호화하려면 대칭 암호화 KMS 키를 사용해야 합니다. 비대칭 KMS 키를 사용하여 Amazon DocumentDB 클러스터의 데이터를 암호화하지 마세요. 자세한 내용은, AWS Key Management Service 개발자 가이드에서 비대칭 키 AWS KMS를 참조하세요 .

Amazon DocumentDB가 클러스터의 KMS 키에 더 이상 액세스할 수 없는 경우, 예를 들어 키를 소유 AWS 계정 한이 일시 중지되거나, 키가 비활성화되거나, 키 삭제가 예약되거나, Amazon DocumentDB가 의존하는 키 정책 또는 권한이 제거되는 경우, 클러스터는 먼저 inaccessible-encryption-credentials-recoverable 상태로 전환됩니다. 클러스터가이 상태인 동안 Amazon DocumentDB는 클러스터의 인스턴스를 중지하고 클러스터에서 읽거나 쓸 수 없지만 KMS 키에 대한 액세스가 7일 이내에 복원되면 클러스터를 복구할 수 있습니다. 7일 이내에 액세스가 복원되지 않으면 클러스터가 터미널 inaccessible-encryption-credentials 상태로 전환됩니다. 터미널 상태에서는 클러스터를 더 이상 사용할 수 없으며 데이터베이스의 현재 상태를 복구할 수 없습니다. 백업에서만 복원하거나 원래 KMS 키를 사용하여 point-in-time으로 복원할 수 있습니다. Amazon DocumentDB의 경우 백업은 항상 최소 1일 동안 활성화됩니다.

참고

글로벌 클러스터의 일부인 클러스터는 다르게 작동합니다. Amazon DocumentDB가 더 이상 KMS 키에 액세스할 수 없음을 감지하면 글로벌 클러스터의 모든 클러스터가 터미널 inaccessible-encryption-credentials 상태로 직접 전환되어 복구 가능 상태를 건너뜁니다. 글로벌 클러스터의 일부인 클러스터는 글로벌 클러스터의 유일한 클러스터인 경우에만 중지하고 시작할 수 있기 때문입니다. 복구하려면 스냅샷에서 복원하거나 point-in-time으로 복원을 수행해야 합니다. 원래 클러스터를 삭제하려면 먼저 글로벌 클러스터에서 각 클러스터를 제거한 다음 삭제해야 합니다.

중요

암호화된 클러스터의 KMS 키는 이미 만든 후에는 변경할 수 없습니다. 암호화된 클러스터를 생성하기 전에 암호화 키 요구 사항을 결정해야 합니다.

Using the AWS Management Console

클러스터를 생성할 때 유휴 데이터 암호화 옵션을 지정합니다. AWS Management Console을 사용하여 클러스터를 생성할 때 기본적으로 유휴 데이터 암호화가 활성화됩니다. 클러스터를 생성한 후에는 변경할 수 없습니다.

클러스터를 생성할 때 유휴 데이터 암호화 옵션을 지정하려면
  1. 시작하기 섹션에 설명된 대로 Amazon DocumentDB 클러스터를 생성합니다 하지만 6단계에서 클러스터 생성을 선택하지 마세요.

  2. 인증 섹션 아래에서 고급 설정 표시를 선택합니다.

  3. 유휴 상태에서 암호화 섹션으로 아래로 스크롤합니다.

  4. 유휴 상태 암호화에 사용할 옵션을 선택합니다. 어떤 옵션을 선택하든 클러스터를 생성한 후에는 변경할 수 없습니다.

    • 이 클러스터에서 저장 데이터를 암호화하려면 암호화 활성화를 선택합니다.

    • 이 클러스터에서 저장 데이터를 암호화하지 않으려면 암호화 비활성화를 선택합니다.

  5. 원하는 프라이머리 키를 선택합니다. Amazon DocumentDB는 AWS Key Management Service (AWS KMS)를 사용하여 암호화 키를 검색 및 관리하고 이러한 키를 사용하는 방법을 제어하는 정책을 정의합니다. AWS KMS 키 식별자를 지정하지 않으면 Amazon DocumentDB는 기본 AWS 관리형 서비스 KMS 키를 사용합니다. 자세한 내용은 AWS Key Management Service 개념을 참조하세요.

    참고

    암호화된 클러스터를 생성한 후에는 해당 클러스터의 KMS를 변경할 수 없습니다. 암호화된 클러스터를 생성하기 전에 암호화 키 요구 사항을 결정해야 합니다.

  6. 필요에 따라 다른 섹션을 완료하고 클러스터를 생성합니다.

Using the AWS CLI

를 사용하여 Amazon DocumentDB 클러스터를 암호화하려면 create-db-cluster 명령을 AWS CLI실행하고 --storage-encrypted 옵션을 지정합니다. 를 사용하여 생성된 Amazon DocumentDB 클러스터는 기본적으로 스토리지 암호화를 활성화하지 AWS CLI 않습니다.

다음 예제에서는 스토리지 암호화를 사용하도록 설정된 Amazon DocumentDB 클러스터를 만듭니다.

다음 예제에서는 각각의 사용자 입력 자리 표시자를 자신의 클러스터 정보로 바꿉니다.

Linux, macOS, Unix의 경우:

aws docdb create-db-cluster \ --db-cluster-identifier mydocdbcluster \ --port 27017 \ --engine docdb \ --master-username SampleUser1 \ --master-user-password primaryPassword \ --storage-encrypted

Windows의 경우:

aws docdb create-db-cluster ^ --db-cluster-identifier SampleUser1 ^ --port 27017 ^ --engine docdb ^ --master-username SampleUser1 ^ --master-user-password primaryPassword ^ --storage-encrypted

암호화된 Amazon DocumentDB 클러스터를 생성할 때 다음 예제와 같이 AWS KMS 키 식별자를 지정할 수 있습니다.

Linux, macOS, Unix의 경우:

aws docdb create-db-cluster \ --db-cluster-identifier SampleUser1 \ --port 27017 \ --engine docdb \ --master-username primaryUsername \ --master-user-password yourPrimaryPassword \ --storage-encrypted \ --kms-key-id key-arn-or-alias

Windows의 경우:

aws docdb create-db-cluster ^ --db-cluster-identifier SampleUser1 ^ --port 27017 ^ --engine docdb ^ --master-username SampleUser1 ^ --master-user-password primaryPassword ^ --storage-encrypted ^ --kms-key-id key-arn-or-alias
참고

암호화된 클러스터를 생성한 후에는 해당 클러스터의 KMS를 변경할 수 없습니다. 암호화된 클러스터를 생성하기 전에 암호화 키 요구 사항을 결정해야 합니다.

액세스할 수 없는 암호화 상태에서 Amazon DocumentDB 클러스터 해결

Amazon DocumentDB가 클러스터가 암호화된 KMS 키에 액세스할 수 없는 경우 Amazon DocumentDB 클러스터는 액세스할 수 없는 암호화 상태로 이동합니다. 이러한 상태는 두 가지이며 복구 경로는 클러스터가 있는 상태에 따라 달라집니다.

inaccessible-encryption-credentials-recoverable 상태

클러스터가 inaccessible-encryption-credentials-recoverable 상태인 동안 KMS 키에 대한 Amazon DocumentDB의 액세스를 복원available한 다음 클러스터를 시작하여 클러스터를에 반환할 수 있습니다. 이 상태를 해결하려면 다음을 수행합니다.

  1. KMS 키를 소유 AWS 계정 한이 활성 상태인지 확인합니다. 계정이 일시 중지된 경우 계정을 다시 활성화합니다.

  2. KMS 키가 활성화되어 있는지 확인합니다. 자세한 내용은 AWS Key Management Service 개발자 안내서키 활성화 및 비활성화를 참조하세요.

  3. KMS 키 삭제가 예약되어 있는지 확인합니다. 그렇다면 예약된 키 삭제를 취소합니다. 자세한 내용은 AWS Key Management Service 개발자 안내서키 삭제 예약 및 취소를 참조하세요.

  4. Amazon DocumentDB가 사용하는 KMS 키 정책 및 권한 부여가 여전히 Amazon DocumentDB의 키 사용을 허용하는지 확인합니다.

  5. KMS 키에 대한 액세스가 복원된 후를 사용하거나 start-db-cluster AWS CLI 명령을 실행 AWS Management Console 하여 클러스터를 시작합니다.

    Linux, macOS, Unix의 경우:

    aws docdb start-db-cluster \ --db-cluster-identifier example-cluster

    Windows의 경우:

    aws docdb start-db-cluster ^ --db-cluster-identifier example-cluster
중요

KMS 키에 대한 액세스가 7일 이내에 복원되지 않으면 클러스터는 시작할 수 없는 터미널 inaccessible-encryption-credentials 상태로 전환됩니다.

inaccessible-encryption-credentials 상태

inaccessible-encryption-credentials 상태는 터미널입니다. 클러스터를 시작할 수 없으며 데이터베이스의 실행 상태를 복구할 수 없습니다. 데이터를 복구하려면 스냅샷에서 복원하거나 새 클러스터로 point-in-time으로 복원을 수행합니다. 복원을 수행하려면 원래 KMS 키에 대한 액세스 권한이 있어야 합니다. KMS 키가 삭제된 경우 데이터를 복구할 수 없습니다.

자세한 내용은 클러스터 스냅샷에서 복원특정 시점으로 복원 섹션을 참조하세요.

참고

글로벌 클러스터의 일부인 클러스터는 글로벌 클러스터의 유일한 클러스터인 경우에만 글로벌 클러스터의 일부인 클러스터를 중지하고 시작할 수 있으므로 KMS 키에 대한 액세스 권한이 손실되면 inaccessible-encryption-credentials 상태로 직접 전환됩니다. 이 상태의 클러스터를 삭제하려면 먼저 글로벌 클러스터에서 각 클러스터를 제거한 다음 클러스터를 개별적으로 삭제합니다.

삭제 방지 기능이 활성화되어 있기 때문에 inaccessible-encryption-credentials 상태인 클러스터를 삭제할 수 없는 경우 삭제를 다시 시도 AWS CLI 하기 전에를 사용하여 삭제 방지 기능을 끕니다.

Linux, macOS, Unix의 경우:

aws docdb modify-db-cluster \ --db-cluster-identifier example-cluster \ --no-deletion-protection

Windows의 경우:

aws docdb modify-db-cluster ^ --db-cluster-identifier example-cluster ^ --no-deletion-protection

그런 다음 delete-db-cluster 명령을 사용하여 클러스터를 삭제할 수 있습니다.

Linux, macOS, Unix의 경우:

aws docdb delete-db-cluster \ --db-cluster-identifier example-cluster \ --skip-final-snapshot

Windows의 경우:

aws docdb delete-db-cluster ^ --db-cluster-identifier example-cluster ^ --skip-final-snapshot

위 명령을 실행한 후에도 클러스터가 삭제되지 않으면 AWS Support에 문의하세요.

Amazon DocumentDB 암호화된 클러스터의 제한 사항

Amazon DocumentDB 암호화된 클러스터에는 다음과 같은 제한이 있습니다.

  • Amazon DocumentDB 클러스터에 대해 중지된 암호화는 클러스터가 생성된 후가 아니라 생성된 시점에만 사용 가능 또는 불가능으로 설정할 수 있습니다. 그러나 암호화되지 않은 클러스터의 스냅샷을 생성한 다음 암호화 중지 옵션 지정을 통해 암호화되지 않은 스냅샷을 새 클러스터로 복원하여 암호화되지 않은 클러스터의 암호화된 복사본을 생성할 수 있습니다.

    자세한 내용은 다음 항목을 참조하세요.

  • 스토리지 암호화를 사용하도록 설정된 Amazon DocumentDB 클러스터는 암호화를 사용하지 않도록 수정할 수 없습니다.

  • Amazon DocumentDB 클러스터의 모든 인스턴스, 자동 백업, 스냅샷 및 인덱스는 동일한 KMS로 암호화됩니다.