고객 마스터 키 삭제 - AWS Key Management Service

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

고객 마스터 키 삭제

(고객 마스터 키)에서 CMK(AWS Key Management Service)를 삭제하는 것은 안전하지 않으며 위험할 수 있습니다.AWS KMS 키 구성 요소와 CMK에 연결된 모든 메타데이터를 삭제하며, 되돌릴 수 없습니다. 가 삭제된 후에는 해당 CMK로 암호화된 데이터를 더 이상 해독할 수 없습니다. 즉, 데이터를 복구할 수 없게 됩니다.CMK 더 이상 사용할 필요가 없다고 확신하는 경우에만 CMK를 삭제해야 합니다. 확실하지 않은 경우 삭제하는 대신 를 비활성화CMK하는 것이 좋습니다. 비활성화된 CMK는 나중에 다시 사용해야 하는 경우 다시 활성화할 수 있지만 삭제된 CMK는 복구할 수 없습니다.

를 삭제하기 전에 해당 CMK로 암호화된 암호화 텍스트 수를 알고 싶을 수 있습니다. CMK는 이 정보를 저장하지 않으며 어떠한 암호화 텍스트도 저장하지 않습니다.AWS KMS 이 정보를 얻으려면 사용자가 직접 CMK의 과거 사용량을 확인해야 합니다. 이때 도움이 될 만한 지침을 읽으려면 과거의 과거 사용 고객 마스터 키 페이지를 방문하십시오.

AWS KMS는 명시적으로 삭제를 예약하고 필수 대기 기간이 만료되지 않는 한 CMKs를 삭제하지 않습니다.

그러나 다음 중 하나 이상의 이유로 CMK를 삭제하도록 선택할 수 있습니다.

참고

계정을 닫거나 삭제하면 AWS에 액세스할 수 없으며 더 이상 비용이 청구되지 않습니다.CMKs 계정을 닫는 것과 별도로 CMKs 삭제를 예약할 필요가 없습니다.

삭제 작동 방식고객 마스터 키

권한이 부여된 사용자는 대칭 및 비대칭 고객 마스터 키(CMKs)를 삭제할 수 있습니다. 절차는 두 유형의 CMKs에 대해 동일합니다.

를 삭제하는 것은 안전하지 않으며 위험할 수 있기 때문에 CMK는 대기 기간을 적용합니다.AWS KMS 에서 CMK를 삭제하려면 AWS KMS키 삭제를 예약합니다. 대기 기간을 최소 7일에서 최대 30일까지 설정할 수 있습니다. 기본 대기 기간은 30일입니다.

대기 기간 동안 CMK 상태 및 키 상태는 Pending deletion(삭제 보류 중)입니다.

  • 삭제 보류 중인 CMK는 어떠한 암호화 작업에도 사용할 수 없습니다.

  • AWS KMS는 삭제 보류 중인 백업 키를 교체CMKs하지 않습니다.

대기 기간이 종료된 후 AWS KMS는 CMK 및 이를 가리키는 모든 별칭을 포함하여 이와 연결된 모든 AWS KMS 데이터를 삭제합니다.

키 삭제를 예약하면 AWS KMS가 대기 기간이 끝나는 날짜와 시간을 보고합니다. 이 날짜와 시간은 키 삭제를 예약한 시점으로부터 지정된 최소 수만큼 경과한 시점이지만 최대 24시간이 더해질 수 있습니다. 예를 들어 키 삭제를 예약하고 대기 시간을 7일로 설정한다고 해봅시다. 이 경우에는 요청한 시간으로부터 7일 이후부터 8일 이내에 대기 시간이 종료됩니다. AWS Management 콘솔, AWS CLI, 또는 AWS KMS API에서 대기 기간이 끝나는 정확한 날짜와 시간을 확인합니다.

현재 또는 향후에 CMK가 필요하지 않도록 하기 위해 대기 기간을 사용합니다. 경보를 구성하여 사람이나 애플리케이션이 대기 기간 중에 Amazon CloudWatch를 사용하려고 할 때 경고할 수 있습니다.CMK 를 복구하려면 대기 기간이 끝나기 전에 키 삭제를 취소할 수 있습니다.CMK 대기 기간이 종료된 후에는 키 삭제를 취소할 수 없으며 AWS KMS는 CMK를 삭제합니다.

AWS KMS는 AWS CloudTrail의 삭제를 예약할 때와 CMK가 실제로 삭제될 때 CMK 로그에 항목을 기록합니다.

비대칭 CMKs 삭제

권한이 부여된 사용자는 대칭 또는 비대칭 를 삭제할 수 있습니다.CMKs 이러한 CMKs의 삭제를 예약하는 절차는 두 유형의 키에 대해 동일합니다. 그러나 비대칭 CMK의 퍼블릭 키를 다운로드하여 AWS KMS 외부에서 사용할 수 있기 때문에 이 작업은 특히 암호화에 사용되는 비대칭 CMKs의 경우(키 사용이 ENCRYPT_DECRYPT) 상당한 추가 위험을 초래합니다.

  • 의 삭제를 예약하면 CMK의 키 상태가 CMKPending deletion(삭제 보류 중)으로 변경되고 를 CMK암호화 작업에 사용할 수 없습니다. 그러나 삭제 예약은 AWS KMS 외부의 퍼블릭 키에는 영향을 미치지 않습니다. 퍼블릭 키가 있는 사용자는 계속해서 해당 키를 사용하여 메시지를 암호화할 수 있습니다. 키 상태가 변경되었다는 알림은 받지 못합니다. 삭제가 취소되지 않으면 해당 퍼블릭 키로 생성된 암호화 텍스트는 해독할 수 없습니다.

  • 삭제 보류 중인 CMK 사용을 시도했음을 감지하는 경보, 로그 및 기타 전략은 AWS KMS 외부에서의 퍼블릭 키 사용을 감지할 수 없습니다.

  • 가 삭제되면 해당 CMK와 관련된 모든 AWS KMS 작업이 실패합니다.CMK 그러나 퍼블릭 키가 있는 사용자는 계속해서 메시지를 암호화하는 데 사용할 수 있습니다. 이러한 암호화 텍스트는 해독할 수 없습니다.

키 사용이 CMK인 비대칭 ENCRYPT_DECRYPT을 삭제해야 하는 경우 CloudTrail 로그 항목을 사용하여 퍼블릭 키가 다운로드 및 공유되었는지 확인합니다. 그러한 퍼블릭 키가 있을 경우 해당 키가 AWS KMS 외부에서 사용되지 않는지 확인합니다. 그런 다음 을 삭제하는 대신 비활성화CMK하는 것이 좋습니다.

삭제가 고객 마스터 키와 통합된 AWS 서비스에 미치는 영향AWS KMS

여러 AWS 서비스가 AWS KMS와 통합되어 데이터를 보호합니다. Amazon EBS 및 와 같은 일부 서비스는 Amazon Redshift에서 고객 마스터 키()를 사용하여 CMK데이터 키AWS KMS를 생성한 다음 데이터 키를 사용하여 데이터를 암호화합니다.데이터 키 보호하는 데이터가 현재 사용 중인 동안에는 이러한 일반 텍스트 데이터 키가 메모리에 유지됩니다.

가 삭제되도록 예약하면 사용할 수 없게 되지만 CMK 서비스가 메모리의 데이터 키를 사용하여 데이터를 암호화하고 해독하는 것은 불가능합니다.AWS 삭제 대기 중이거나 삭제된 CMK를 사용해야 할 때까지 서비스에 영향이 가지 않습니다.

예를 들어 다음 시나리오를 고려해 보십시오.

  1. 암호화된 EBS 볼륨을 생성하고 CMK를 지정합니다. Amazon EBS는 AWS KMS를 사용하여 볼륨의 CMK암호화된 데이터 키를 생성하도록 에 요청합니다. Amazon EBS는 볼륨과 함께 암호화된 데이터 키를 저장합니다.

  2. EBS 볼륨을 EC2 인스턴스에 연결하면 Amazon EC2가 AWS KMS를 사용하여 EBS 볼륨의 암호화된 데이터 키를 암호화 해제하도록 CMK에 요청합니다. Amazon EC2는 하이퍼바이저 메모리에 일반 텍스트 데이터 키를 저장하고 이를 사용하여 디스크 I/O를 EBS 볼륨으로 암호화합니다. EBS 볼륨이 EC2 인스턴스에 연결되어 있는 동안에는 데이터 키가 메모리에 유지됩니다.

  3. 삭제할 CMK를 예약하면 사용할 수 없게 됩니다. 이는 EC2 인스턴스 또는 EBS 볼륨에 즉각적인 영향을 주지 않습니다. Amazon EC2가 —가 아닌CMK일반 텍스트 데이터 키를 사용하여 디스크 I/O를 EBS 볼륨으로 암호화하기 때문입니다.—

    예약된 시간이 경과하여 AWS KMS가 CMK를 삭제하더라도 Amazon EC2는 CMK가 아닌 일반 텍스트 데이터 키를 사용하므로 EC2 인스턴스 또는 EBS 볼륨에는 즉각적인 영향이 없습니다.

  4. 단, 암호화된 EBS 볼륨이 EC2 인스턴스에서 삭제되면 Amazon EBS는 일반 텍스트 키를 메모리에서 제거합니다. 다음에 암호화된 EBS 볼륨이 EC2 인스턴스에 연결될 때 Amazon EBS가 볼륨의 암호화된 데이터 키를 해독하는 데 CMK를 사용할 수 없기 때문에 연결이 실패합니다.

키 삭제 예약 및 취소

다음 절차에서는 AWS Management 콘솔, AWS CLI 및 AWS SDK for Java를 사용하여 AWS KMS에서 키 삭제를 예약하고 취소하는 방법에 대해 설명합니다.

주의

에서 고객 마스터 키(CMK)을 삭제하는 것은 안전하지 않으며 위험할 수 있습니다.AWS KMS 더 이상 CMK를 사용할 필요가 없다고 확신하고 나중에 사용할 필요가 없는 경우에만 진행해야 합니다. 잘 모르는 경우 삭제하는 대신 를 비활성화CMK해야 합니다.

를 삭제하려면 먼저 삭제할 수 있는 권한이 있어야 합니다.CMK 키 정책에만 의존하여 AWS KMS 권한을 지정하는 경우 CMK를 삭제하기 전에 권한을 추가해야 할 수 있습니다. 이러한 권한 추가에 대한 자세한 내용은 키 삭제 예약 및 취소를 위한 권한 추가에서 확인하십시오.

AWS KMS는 AWS CloudTrail의 삭제를 예약할 때와 CMK가 실제로 삭제될 때 CMK 로그에 항목을 기록합니다.

키 삭제 예약 및 취소(console)

AWS Management 콘솔에서 키 삭제를 예약하고 취소할 수 있습니다.

키 삭제를 예약하려면

  1. AWS Management 콘솔에 로그인한 후 https://console.aws.amazon.com/kms에서 AWS Key Management Service(AWS KMS) 콘솔을 엽니다.

  2. AWS 리전을 변경하려면 페이지의 오른쪽 위 모서리에 있는 리전 선택기를 사용합니다.

  3. 탐색 창에서 고객 관리형 키를 선택합니다.

  4. 삭제할 CMK 옆의 확인란을 선택합니다.

  5. Key actions(키 작업)Schedule key deletion(키 삭제 예약)을 차례로 선택합니다.

  6. 경고와 대기 기간 동안 삭제 취소에 대한 정보를 읽고 고려하십시오. 삭제를 취소하려면 취소를 선택합니다.

  7. Waiting period(in days)(대기 기간(일))에 7~30 범위의 일수를 입력합니다.

  8. Confirm you want to schedule this key for deletion in(이 키의 삭제를 예약할 확인) 옆에 있는 확인란을 선택합니다.<number of days> 일..

  9. [Schedule deletion]을 선택합니다.

상태가 CMKPending deletion(삭제 보류 중)으로 변경됩니다.

키 삭제를 취소하려면

  1. https://console.aws.amazon.com/kms에서 AWS KMS 콘솔을 엽니다.

  2. AWS 리전을 변경하려면 페이지의 오른쪽 위 모서리에 있는 리전 선택기를 사용합니다.

  3. 탐색 창에서 고객 관리형 키를 선택합니다.

  4. 복구할 CMK 옆의 확인란을 선택합니다.

  5. Key actions(키 작업)Cancel key deletion(키 삭제 취소)을 차례로 선택합니다.

상태가 CMKPending deletion(삭제 보류 중)에서 비활성으로 변경됩니다. 를 사용하려면 CMK활성화해야 합니다.

키 삭제 예약 및 취소(AWS CLI)

다음 예제와 같이 aws kms schedule-key-deletion 명령을 사용하여 AWS CLI에서 키 삭제를 예약할 수 있습니다.

$ aws kms schedule-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab --pending-window-in-days 10

성공적으로 사용되면 AWS CLI는 다음 예제의 출력과 비슷한 출력을 반환합니다.

{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "DeletionDate": 1442102400.0 }

다음 예제와 같이 aws kms cancel-key-deletion 명령을 사용하여 AWS CLI에서 키 삭제를 취소할 수 있습니다.

$ aws kms cancel-key-deletion --key-id 1234abcd-12ab-34cd-56ef-1234567890ab

성공적으로 사용되면 AWS CLI는 다음 예제의 출력과 비슷한 출력을 반환합니다.

{ "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }

의 상태가 CMKPending Deletion(삭제 보류 중)에서 비활성으로 변경됩니다. 를 사용하려면 CMK활성화해야 합니다.

키 삭제 예약 및 취소(AWS SDK for Java)

다음 예제에서는 CMK를 사용하여 삭제할 AWS SDK for Java를 예약하는 방법을 보여 줍니다. 이 예제에서는 먼저 AWSKMSClientkms로 인스턴스화해야 합니다.

String KeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; int PendingWindowInDays = 10; ScheduleKeyDeletionRequest scheduleKeyDeletionRequest = new ScheduleKeyDeletionRequest().withKeyId(KeyId).withPendingWindowInDays(PendingWindowInDays); kms.scheduleKeyDeletion(scheduleKeyDeletionRequest);

다음 예제는 AWS SDK for Java를 사용하여 키 삭제를 취소하는 방법을 보여줍니다. 이 예제에서는 먼저 AWSKMSClientkms로 인스턴스화해야 합니다.

String KeyId = "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"; CancelKeyDeletionRequest cancelKeyDeletionRequest = new CancelKeyDeletionRequest().withKeyId(KeyId); kms.cancelKeyDeletion(cancelKeyDeletionRequest);

의 상태가 CMKPending Deletion(삭제 보류 중)에서 비활성으로 변경됩니다. 를 사용하려면 CMK활성화해야 합니다.

키 삭제 예약 및 취소를 위한 권한 추가

정책을 사용하여 IAM 권한을 허용하는 경우 AWS KMS 관리자 액세스(IAM) 또는 AWS 전체 액세스("Action": "*")가 있는 모든 AWS KMS 사용자와 역할은 이미 "Action": "kms:*" AWS KMS에 대한 키 삭제를 예약하고 취소할 수 있습니다.CMKs 키 정책에만 의존하여 AWS KMS 권한을 허용하는 경우, IAM 사용자 및 역할이 CMKs를 삭제하도록 허용하는 권한을 추가해야 할 수 있습니다. 이 권한을 추가하려면 다음 단계를 참조하십시오.

다음 절차는 AWS Management 콘솔 또는 AWS CLI를 사용해 키 정책에 권한을 추가하는 방법에 대해 설명합니다.

키 삭제를 예약하고 취소할 권한을 추가하는 방법

키 삭제 예약 및 취소를 위한 권한 추가(console)

AWS Management 콘솔을 이용해 키 삭제를 예약하고 취소할 권한을 추가할 수 있습니다.

  1. AWS Management 콘솔에 로그인한 후 https://console.aws.amazon.com/kms에서 AWS Key Management Service(AWS KMS) 콘솔을 엽니다.

  2. AWS 리전을 변경하려면 페이지의 오른쪽 위 모서리에 있는 리전 선택기를 사용합니다.

  3. 탐색 창에서 고객 관리형 키를 선택합니다.

  4. 권한을 변경할 CMK의 별칭 또는 키 ID를 선택합니다.

  5. Key policy(키 정책) 탭을 선택합니다. 키 삭제에서 키 관리자가 이 키를 삭제하도록 허용을 선택한 다음 변경 사항 저장을 선택합니다.

    참고

    Allow key administrators to delete this key(키 관리자가 이 키를 삭제하도록 허용) 옵션이 표시되지 않는 경우, 보통은 AWS KMS API를 이용해 이 키 정책을 수정했다는 의미입니다. 이 경우 키 정책 문서를 수동으로 업데이트해야 합니다. kms:ScheduleKeyDeletionkms:CancelKeyDeletion 권한을 키 정책의 키 관리자 문("Sid": "Allow access for Key Administrators")에 추가한 다음 변경 사항 저장을 선택합니다.

키 삭제 예약 및 취소를 위한 권한 추가(AWS CLI)

AWS Command Line Interface을 이용해 키 삭제를 예약하고 취소할 권한을 추가할 수 있습니다.

키 삭제를 예약하고 취소할 권한을 추가하려면

  1. aws kms get-key-policy 명령을 이용해 기존 키 정책을 검색한 후 정책 문서를 파일에 저장합니다.

  2. 원하는 텍스트 편집기에서 정책 문서를 열고 키 관리자에게 권한을 부여하는 정책 설명(예를 들어 "Sid": "Allow access for Key Administrators"가 포함된 정책 설명)에 kms:ScheduleKeyDeletionkms:CancelKeyDeletion 권한을 추가합니다. 그런 다음 파일을 저장합니다. 다음 예는 이 두 권한이 포함된 정책 설명을 보여줍니다.

    { "Sid": "Allow access for Key Administrators", "Effect": "Allow", "Principal": {"AWS": "arn:aws:iam::111122223333:user/KMSKeyAdmin"}, "Action": [ "kms:Create*", "kms:Describe*", "kms:Enable*", "kms:List*", "kms:Put*", "kms:Update*", "kms:Revoke*", "kms:Disable*", "kms:Get*", "kms:Delete*", "kms:ScheduleKeyDeletion", "kms:CancelKeyDeletion" ], "Resource": "*" }
  3. aws kms put-key-policy 명령을 사용하여 키 정책을 에 적용합니다.CMK