회전하는 AWS KMS keys - AWS Key Management Service

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

회전하는 AWS KMS keys

고객 관리형 키에 대한 새로운 암호화 자료를 만들려면 새 KMS 키를 만든 다음, 새 KMS 키를 사용하도록 애플리케이션 또는 별칭을 변경하면 됩니다. 또는 자동 키 교체를 활성화하거나 온디맨드 순환을 수행하여 기존 KMS 키와 관련된 키 구성 요소를 교체할 수 있습니다.

기본적으로 KMS 키의 자동 키 교체를 활성화하면 KMS 키에 대한 새로운 암호화 자료가 매년 AWS KMS 생성됩니다. 또한 사용자 지정을 rotation-period 지정하여 키 자료를 순환시키는 AWS KMS 자동 키 교체를 활성화한 후 남은 일수와 이후 각 자동 교체 사이의 일수를 정의할 수 있습니다. 키 구성 요소 순환을 즉시 시작해야 하는 경우 자동 키 순환 활성화 여부에 관계없이 온디맨드 로테이션을 수행할 수 있습니다. 온디맨드 로테이션은 기존 자동 순환 일정을 변경하지 않습니다.

AWS KMS 모든 이전 버전의 암호화 자료를 영구적으로 저장하므로 해당 KMS 키로 암호화된 모든 데이터를 해독할 수 있습니다. AWS KMS KMS 키를 삭제할 때까지 회전된 키 구성 요소를 삭제하지 않습니다. Amazon CloudWatch 및 AWS Key Management Service 콘솔에서 KMS 키의 키 구성 요소 순환을 추적할 수 있습니다. AWS CloudTrail또한 GetKeyRotationStatus작업을 사용하여 KMS 키에 자동 교체가 활성화되어 있는지 확인하고 진행 중인 온디맨드 로테이션을 식별할 수 있습니다. ListKeyRotations작업을 사용하여 완료된 순환의 세부 정보를 볼 수 있습니다.

회전된 KMS 키를 사용하여 데이터를 암호화하는 경우, AWS KMS 는 현재 키 자료를 사용합니다. 회전된 KMS 키를 사용하여 암호문을 해독하는 경우 암호화에 사용된 키 자료의 버전을 AWS KMS 사용합니다. 암호 해독 작업에 사용할 키 자료의 특정 버전을 선택할 수 없으며, 자동으로 올바른 버전을 선택합니다. AWS KMS 적절한 키 자료를 사용하여 AWS KMS 투명하게 해독하므로 회전된 KMS 키를 애플리케이션에서 코드 변경 없이 안전하게 사용할 수 있습니다. AWS 서비스

그러나 자동 키 순환은 KMS 키가 보호하는 데이터에는 영향을 주지 않습니다. KMS 키에서 생성한 데이터 키를 교체하거나 KMS 키에서 보호하는 데이터를 다시 암호화하지 않으며, 손상된 데이터 키의 영향을 완화하지 않습니다.

AWS KMS 생성된 키 구성 요소를 사용하는 대칭 암호화 KMS 키에 대해서만 자동 및 온디맨드 키 교체를 지원합니다. AWS KMS 고객 관리형 KMS 키의 경우 자동 교체는 선택 사항입니다. AWS KMS 는 항상 AWS 관리형 KMS 키의 주요 구성 요소를 매년 교체합니다. AWS 소유한 KMS 키의 교체는 키를 소유한 AWS 서비스에서 관리합니다.

참고

의 순환 기간은 2022년 5월에 AWS 관리형 키 변경되었습니다. 자세한 내용은 AWS 관리형 키 섹션을 참조하세요.

키를 교체하면 암호화 작업에 사용되는 암호화 비밀인 키 구성 요소만 변경됩니다. KMS 키는 키 구성 요소가 변경되는지 여부 또는 횟수에 관계없이 동일한 논리적 리소스입니다. 다음 이미지와 같이, KMS 키의 속성은 변경되지 않습니다.

새 KMS 키를 생성하여 원본 KMS 키 대신 사용하기로 결정할 수 있습니다. 이렇게 하면 기존 KMS 키에서 키 구성 요소를 교체하는 것과 동일한 효과가 있으므로, 이 방법은 일반적으로 키를 수동으로 교체하는 것으로 간주됩니다. 수동 교체는 비대칭 KMS 키, HMAC KMS 키, 사용자 지정 키 스토어의 KMS 키, 키 구성 요소를 가져온 KMS 키등 자동 키 교체에 적합하지 않은 KMS 키를 교체하려는 경우에 적합합니다.

키 교체 및 요금

AWS KMS KMS 키에 유지되는 키 구성 요소의 첫 번째 및 두 번째 순환에 대해 월별 요금을 청구합니다. 이 가격 인상은 두 번째 로테이션에만 적용되며 이후 로테이션에는 요금이 청구되지 않습니다. 자세한 내용은 AWS Key Management Service 요금을 참조하세요.

참고

AWS Cost Explorer Service을 사용하여 키 스토리지 요금 내역을 확인할 수 있습니다. 예를 들어 사용 유형에 대한 $REGION-KMS-Keys를 지정하고 API 작업별로 데이터를 그룹화하여 현재 KMS 키와 교체된 KMS 키로 청구되는 키의 총 요금을 확인할 수 있도록 보기를 필터링할 수 있습니다.

이전 날짜에 대한 레거시 Unknown API 작업 인스턴스가 계속 표시될 수 있습니다.

키 교체 및 할당량

각 KMS 키는 키 리소스 할당량을 계산할 때 교체된 키 구성 요소 버전의 수에 관계없이 하나의 키로 계산됩니다.

키 구성 요소 및 교체에 대한 자세한 내용은 AWS Key Management Service 암호화 세부 정보를 참조하세요.

KMS 키를 교체하는 이유는 무엇인가요?

암호화 모범 사례는 데이터를 직접 암호화하는 키 (예: 생성된 데이터 키) 를 광범위하게 재사용하는 것을 권장하지 않습니다. AWS KMS 256비트 데이터 키가 수백만 개의 메시지를 암호화하면 데이터가 소진되어 미묘한 패턴을 가진 사이퍼텍스트를 생성하기 시작할 수 있습니다. 영리한 액터는 이를 악용하여 키의 비트를 찾아낼 수 있습니다. 이러한 키 소진을 방지하려면 데이터 키를 한 번 또는 몇 번만 사용하는 것이 가장 좋습니다. 이렇게 하면 키 구성 요소가 효과적으로 교됩니다.

하지만 KMS 키는 키 암호화 키라고도 알려진 래핑 키로 가장 자주 사용됩니다. 래핑 키는 데이터를 암호화하는 대신 데이터를 암호화하는 데이터 키를 암호화합니다. 따라서 데이터 키보다 사용 빈도가 훨씬 적고 키가 고갈될 위험이 있을 정도로 재사용되는 경우가 거의 없습니다.

이렇게 소진 위험은 매우 낮지만 비즈니스 또는 계약 규칙이나 정부 규정으로 인해 KMS 키를 교체해야 할 수도 있습니다. KMS 키를 교체해야 할 때는 지원되는 경우 자동 키 교체를 사용하고, 자동 키 교체가 지원되지 않는 경우에는 수동 키 교체를 사용하는 것이 좋습니다.

주요 자료 순환 기능을 시연하거나 자동화 스크립트를 검증하기 위해 온디맨드 로테이션을 수행하는 것을 고려할 수 있습니다. 예상치 못한 로테이션에는 온디맨드 로테이션을 사용하고, 가능하면 사용자 지정 로테이션 주기와 함께 자동 키 로테이션을 사용하는 것이 좋습니다.

키 로테이션 작동 방식

키 로테이션은 투명하고 사용하기 쉽도록 설계되었습니다. AWS KMS AWS KMS 고객 관리 키에 대해서만 선택적 자동 및 온디맨드 키 교체를 지원합니다.

자동 키 교체

AWS KMS 순환 기간에 정의된 다음 순환 날짜에 KMS 키를 자동으로 순환합니다. 업데이트를 기억하거나 예약할 필요가 없습니다.

온디맨드 로테이션

자동 키 교체 활성화 여부에 관계없이 KMS 키와 관련된 키 구성 요소의 순환을 즉시 시작합니다.

키 구성 요소 관리

AWS KMS 키 순환이 비활성화된 경우에도 KMS 키의 모든 키 구성 요소를 보존합니다. AWS KMS KMS 키를 삭제할 때만 키 자료를 삭제합니다.

키 구성 요소 사용

회전된 KMS 키를 사용하여 데이터를 암호화하는 경우, AWS KMS 는 현재 키 구성 요소를 사용합니다. 교체된 KMS 키를 사용하여 암호화 텍스트를 해독하면 AWS KMS 는 해당 데이터를 암호화하는 데 사용한 키 구성 요소와 같은 버전을 사용합니다. 암호 해독 작업에 사용할 특정 버전의 키 구성 요소를 선택할 수 없으며 AWS KMS 자동으로 올바른 버전을 선택합니다.

순환 기간

순환 기간은 키 자료를 순환시키는 자동 키 교체를 활성화한 후의 일수와 이후 각 자동 키 교체 사이의 일수를 정의합니다. AWS KMS 자동 키 순환을 활성화할 RotationPeriodInDays 때 값을 지정하지 않는 경우 기본값은 365일입니다.

kms: RotationPeriodInDays condition 키를 사용하여 보안 주체가 파라미터에 지정할 수 있는 값을 추가로 제한할 수 있습니다. RotationPeriodInDays

교체 날짜

AWS KMS 순환 기간에 정의된 순환 날짜에 KMS 키를 자동으로 교체합니다. 기본 순환 기간은 365일입니다.

고객 관리형 키

고객 관리 키에서는 자동 키 교체가 선택 사항이며 언제든지 활성화 및 비활성화할 수 있으므로 교체 날짜는 가장 최근에 교체가 활성화된 날짜에 따라 달라집니다. 이전에 자동 키 순환을 활성화한 키의 순환 기간을 수정하면 날짜가 변경될 수 있습니다. 교체 날짜는 키 수명 기간 동안 여러 번 변경될 수 있습니다.

예를 들어, 2022년 1월 1일에 고객 관리형 키를 생성하고 2022년 3월 15일에 기본 교체 기간을 365일로 설정하여 자동 키 AWS KMS 교체를 활성화하면 2023년 3월 15일, 2024년 3월 15일, 그리고 그 이후로는 365일마다 키 구성 요소가 교체됩니다.

다음 예에서는 기본 순환 주기가 365일인 상태에서 자동 키 교체가 활성화되었다고 가정합니다. 이 예는 키의 순환 주기에 영향을 미칠 수 있는 특별한 경우를 보여줍니다.

  • 키 교체 비활성화 - 언제든지 자동 키 교체를 비활성화하면 KMS 키는 교체가 비활성화되었을 때 사용하던 키 구성 요소 버전을 계속 사용합니다. 자동 키 AWS KMS 교체를 다시 활성화하면 새 순환 활성화 날짜를 기준으로 키 자료가 회전합니다.

  • KMS 키 비활성화 - KMS 키가 비활성화되어 있는 동안에는 회전하지 않습니다. AWS KMS 하지만 키 교체 상태는 변경되지 않으며 KMS 키가 비활성인 동안에는 해당 상태를 변경할 수 없습니다. KMS 키를 다시 활성화하면 키 구성 요소가 마지막으로 예정된 순환 날짜가 지난 경우 키 구성 요소가 즉시 교체됩니다. AWS KMS 키 구성 요소가 마지막으로 예약된 순환 날짜를 놓치지 않은 경우 원래 키 순환 일정을 AWS KMS 재개합니다.

  • 삭제 보류 중인 KMS 키 - KMS 키가 삭제 보류 중인 동안에는 교체하지 AWS KMS 않습니다. 키 교체 상태는 false로 설정되며 삭제가 보류 중인 동안에는 해당 상태를 변경할 수 없습니다. 삭제가 취소되면 이전의 키 교체 상태가 복원됩니다. 키 구성 요소가 마지막으로 예정된 순환 날짜가 지난 경우 즉시 AWS KMS 교체합니다. 키 구성 요소가 마지막으로 예약된 순환 날짜를 놓치지 않은 경우 원래 키 순환 일정을 AWS KMS 재개합니다.

AWS 관리형 키

AWS KMS AWS 관리형 키 매년 자동으로 교체됩니다 (약 365일). AWS 관리형 키에 대한 키의 교체를 사용 또는 사용 중지할 수 없습니다.

의 키 AWS 관리형 키 자료는 먼저 생성일로부터 1년 후에 교체되며, 그 이후에는 매년 (마지막 순환으로부터 약 365일) 교체됩니다.

참고

2022년 5월에 순환 일정을 3년마다 (약 1,095일) AWS 관리형 키 에서 매년 (약 365일) 로 AWS KMS 변경했습니다.

새 AWS 관리형 키 항목은 생성된 지 1년이 지나면 자동으로 교체되며, 그 이후에는 거의 매년 교체됩니다.

기존 AWS 관리형 키 항목은 가장 최근 순환 이후 1년 후에 자동으로 교체되며, 그 이후에는 매년 자동으로 교체됩니다.

AWS 소유 키

AWS 소유 키에 대한 키의 교체를 사용 또는 사용 중지할 수 없습니다. 의 키 교체 AWS 소유 키 전략은 키를 생성하고 관리하는 AWS 서비스에 따라 결정됩니다. 자세한 내용은 서비스에 대한 사용 설명서 또는 개발자 안내서의 저장 시 암호화 주제를 참조하세요.

지원되는 KMS 키 유형

자동 키 교체는 AWS KMS 에서 생성된(오리진 = AWS_KMS) 키 구성 요소가 있는 대칭 암호화 KMS 키에 대해서만 지원됩니다.

다음 유형의 KMS 키에서는 자동 키 교체가 지원되지 않지만 이러한 KMS 키를 수동으로 교체할 수 있습니다.

다중 리전 키

다중 리전 키의 자동 키 교체를 활성화 및 비활성화할 수 있습니다. 기본 키에만 속성을 설정합니다. 키를 AWS KMS 동기화할 때 기본 키의 속성 설정을 복제 키로 복사합니다. 기본 키의 키 구성 요소가 교체되면 해당 키 구성 요소를 모든 복제 키에 AWS KMS 자동으로 복사합니다. 자세한 내용은 다중 리전 키 교체단원을 참조하세요.

AWS 서비스

AWS 서비스에서 서버 측 암호화에 사용하는 고객 관리형 키에서 자동 키 교체를 활성화할 수 있습니다. 연간 교체는 투명하며 AWS 서비스와 호환됩니다.

키 교체 모니터링

AWS 관리형 키또는 고객 관리 키의 키 구성 요소를 AWS KMS 교체하면 Amazon에 KMS CMK Rotation 이벤트가 EventBridge 기록되고 AWS CloudTrail 로그에 RotateKey 이벤트가 기록됩니다. 이러한 레코드를 사용하여 KMS 키가 교체되었는지 확인할 수 있습니다.

AWS Key Management Service 콘솔을 사용하여 남은 온디맨드 순환 수와 KMS 키에 대해 완료된 모든 키 구성 요소 순환 목록을 볼 수 있습니다.

ListKeyRotations작업을 사용하여 완료된 순환의 세부 정보를 볼 수 있습니다.

최종 일관성

키 순환은 다른 AWS KMS 관리 작업과 동일한 최종 일관성 영향을 받습니다. AWS KMS전체에서 새 키 자료를 사용할 수 있게 되기까지 약간의 지연이 있을 수 있습니다. 그러나 키 구성 요소를 교체해도 암호화 작업이 중단되거나 지연되지는 않습니다. 현재 키 구성 요소는 AWS KMS전체에서 새 키 구성 요소를 사용할 수 있을 때까지 암호화 작업에 사용됩니다. 다중 지역 키의 키 구성 요소가 자동으로 교체되면 관련 다중 지역 키가 있는 모든 지역에서 새 키 구성 요소를 사용할 수 있을 때까지 현재 키 구성 요소를 AWS KMS 사용합니다.

자동 키 교체를 활성화하고 비활성화하는 방법

기본적으로 KMS 키의 자동 키 교체를 활성화하면 KMS 키에 대한 새로운 암호화 자료가 매년 AWS KMS 생성됩니다. 또한 사용자 지정을 rotation-period 지정하여 키 자료를 순환시키는 AWS KMS 자동 키 교체를 활성화한 후 남은 일수와 이후 각 자동 교체 사이의 일수를 정의할 수 있습니다.

자동 키 교체에는 다음과 같은 이점이 있습니다.

  • 키를 교체할 때 키 ID, 키 ARN, 리전, 정책 및 권한을 포함한 KMS 키의 속성은 변경되지 않습니다.

  • KMS 키 ID 또는 키 ARN을 참조하는 애플리케이션이나 별칭을 변경할 필요가 없습니다.

  • 키 구성 요소를 교체해도 AWS 서비스에서의 KMS 키 사용에 영향을 미치지 않습니다.

  • 키 순환을 활성화한 후에는 AWS KMS 순환 기간에 정의된 다음 순환 날짜에 KMS 키를 자동으로 교체합니다. 업데이트를 기억하거나 예약할 필요가 없습니다.

인증된 사용자는 AWS KMS 콘솔과 AWS KMS API를 사용하여 자동 키 교체를 활성화 및 비활성화하고 키 교체 상태를 볼 수 있습니다.

자동 키 교체 활성화 및 비활성화 (콘솔)

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

  2. 를 변경하려면 페이지 오른쪽 상단의 지역 선택기를 사용하십시오. AWS 리전

  3. 탐색 창에서 고객 관리형 키를 선택합니다. ( AWS 관리형 키의 교체를 활성화하거나 비활성화할 수 없습니다. 매년 자동으로 교체됩니다.)

  4. KMS 키의 별칭 또는 키 ID를 선택합니다.

  5. 키 교체(Key rotation) 탭을 선택합니다.

    키 교체 탭은 다중 지역 대칭 암호화 KMS 키를 포함하여 AWS KMS 생성된 키 구성 요소 (오리진은AWS_KMS) 가 포함된 대칭 암호화 KMS 키의 세부 정보 페이지에만 표시됩니다.

    비대칭 KMS 키, HMAC KMS 키, 가져온 키 구성 요소가 있는 KMS 키 또는 사용자 지정 키 스토어의 KMS 키는 자동으로 교체할 수 없습니다. 그러나 이들을 수동으로 교체할 수 있습니다.

  6. 자동 키 교체 섹션에서 편집을 선택합니다.

  7. 키 회전의 경우 활성화를 선택합니다.

    참고

    KMS 키가 비활성화되었거나 삭제 보류 중인 경우 키 구성 요소가 교체되지 AWS KMS 않으므로 자동 키 교체 상태 또는 순환 기간을 업데이트할 수 없습니다. KMS 키를 활성화하거나 삭제를 취소하여 자동 키 순환 구성을 업데이트하십시오. 자세한 내용은 키 로테이션 작동 방식키의 주요 상태 AWS KMS 섹션을 참조하세요.

  8. (선택 사항) 90일에서 2560일 사이의 순환 기간을 입력합니다. 기본값은 365일입니다. 사용자 지정 순환 기간을 지정하지 않으면 매년 키 자료가 교체됩니다. AWS KMS

    kms: RotationPeriodInDays condition 키를 사용하여 보안 책임자가 순환 기간에 대해 지정할 수 있는 값을 제한할 수 있습니다.

  9. 저장을 선택합니다.

자동 키 순환 (API) 활성화 및 비활성화AWS KMS

AWS Key Management Service (AWS KMS) API를 사용하여 자동 키 교체를 활성화 및 비활성화하고 모든 고객 관리 키의 현재 교체 상태를 볼 수 있습니다. 이 예제들은 AWS Command Line Interface (AWS CLI)를 사용하지만, 사용자는 어떤 지원되는 프로그래밍 언어라도 사용할 수 있습니다.

EnableKeyRotation작업을 통해 지정된 KMS 키의 자동 키 교체가 활성화됩니다. DisableKeyRotation작업을 수행하면 해당 키가 비활성화됩니다. 이러한 작업에서 KMS 키를 식별하려면 해당 키 ID 또는 키 ARN을 사용합니다. 기본적으로 고객 관리형 KMS 키에 대한 키 교체는 비활성화됩니다.

kms: RotationPeriodInDays condition 키를 사용하여 보안 주체가 요청의 RotationPeriodInDays 파라미터에 지정할 수 있는 값을 제한할 수 있습니다. EnableKeyRotation

다음 예에서는 지정된 대칭 암호화 KMS 키에서 180일의 순환 주기로 키 교체를 활성화하고 GetKeyRotationStatus작업을 사용하여 결과를 확인합니다. 그런 다음 키 교체를 비활성화하고 다시 GetKeyRotationStatus를 사용하여 변경 사항을 확인합니다.

$ aws kms enable-key-rotation \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --rotation-period-in-days 180 $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyRotationEnabled": true, "RotationPeriodInDays": 180, "NextRotationDate": "2024-02-14T18:14:33.587000+00:00" } $ aws kms disable-key-rotation --key-id 1234abcd-12ab-34cd-56ef-1234567890ab $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyRotationEnabled": false }

온디맨드 키 로테이션을 수행하는 방법

자동 키 교체 활성화 여부에 관계없이 고객 관리형 KMS 키의 키 구성 요소를 온디맨드로 교체할 수 있습니다. 자동 교체 (DisableKeyRotation) 를 비활성화해도 온디맨드 로테이션을 수행할 수 있는 기능에는 영향을 주지 않으며 진행 중인 온디맨드 로테이션도 취소되지 않습니다. 온디맨드 로테이션은 기존 자동 순환 일정을 변경하지 않습니다. 730일의 순환 주기로 자동 키 교체가 활성화된 KMS 키를 예로 들어 보겠습니다. 키가 2024년 4월 14일에 자동으로 교체되도록 예약되어 있고 2024년 4월 10일에 온디맨드 순환을 수행하면 키는 예정대로 2024년 4월 14일과 그 이후 730일마다 자동으로 교체됩니다.

KMS 키당 최대 10회까지 온디맨드 키 교체를 수행할 수 있습니다. AWS KMS 콘솔을 사용하여 KMS 키에 사용할 수 있는 남은 온디맨드 순환 수를 확인할 수 있습니다.

온디맨드 키 교체는 대칭 암호화 KMS 키에서만 지원됩니다. 비대칭 KMS 키, HMAC KMS 키, 키 구성 요소를 가져온 KMS 키 또는 사용자 지정 키 스토어의 KMS 키에 대해서는 온디맨드 순환을 수행할 수 없습니다. 관련된 다중 지역 키 세트를 온디맨드 방식으로 교체하려면 기본 키에서 온디맨드 순환을 호출하십시오.

인증된 사용자는 AWS KMS 콘솔과 AWS KMS API를 사용하여 온디맨드 키 교체를 시작하고 키 교체 상태를 볼 수 있습니다.

온디맨드 키 로테이션 시작 (콘솔)

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

  2. 를 변경하려면 페이지 오른쪽 상단의 지역 선택기를 사용하십시오. AWS 리전

  3. 탐색 창에서 고객 관리형 키를 선택합니다. (온디맨드 로테이션은 수행할 수 없습니다. AWS 관리형 키매년 자동으로 교체됩니다.

  4. KMS 키의 별칭 또는 키 ID를 선택합니다.

  5. 키 교체(Key rotation) 탭을 선택합니다.

    키 교체 탭은 다중 지역 대칭 암호화 KMS 키를 포함하여 AWS KMS 생성된 키 구성 요소 (오리진은AWS_KMS) 가 포함된 대칭 암호화 KMS 키의 세부 정보 페이지에만 표시됩니다.

    비대칭 KMS 키, HMAC KMS 키, 키 구성 요소를 가져온 KMS 키 또는 사용자 지정 키 스토어의 KMS 키는 온디맨드 방식으로 교체할 수 없습니다. 그러나 이들을 수동으로 교체할 수 있습니다.

  6. 온디맨드 키 로테이션 섹션에서 키 교체를 선택합니다.

  7. 경고와 키의 남은 온디맨드 로테이션 수에 대한 정보를 읽고 고려하세요. 온디맨드 로테이션을 진행하지 않으려면 [Cancel] 을 선택합니다.

  8. 회전 키를 선택하여 온디맨드 로테이션을 확인합니다.

    참고

    온디맨드 로테이션은 다른 AWS KMS 관리 작업과 동일한 최종 일관성 영향을 받습니다. AWS KMS전체에서 새 키 자료를 사용할 수 있게 되기까지 약간의 지연이 있을 수 있습니다. 온디맨드 로테이션이 완료되면 콘솔 상단의 배너를 통해 알림을 받을 수 있습니다.

온디맨드 키 로테이션 시작 (API)AWS KMS

AWS Key Management Service (AWS KMS) API를 사용하여 온디맨드 키 교체를 시작하고 모든 고객 관리 키의 현재 교체 상태를 볼 수 있습니다. 이 예제들은 AWS Command Line Interface (AWS CLI)를 사용하지만, 사용자는 어떤 지원되는 프로그래밍 언어라도 사용할 수 있습니다.

RotateKeyOnDemand작업을 수행하면 지정된 KMS 키에 대한 온디맨드 키 교체가 즉시 시작됩니다. 이러한 작업에서 KMS 키를 식별하려면 해당 키 ID 또는 키 ARN을 사용합니다.

다음 예제에서는 지정된 대칭 암호화 KMS 키에서 온디맨드 키 교체를 시작하고 이 GetKeyRotationStatus작업을 사용하여 온디맨드 순환이 진행 중인지 확인합니다. OnDemandRotationStartDatekms:GetKeyRotationStatus응답의 내용은 진행 중인 온디맨드 순환이 시작된 날짜 및 시간을 식별합니다.

$ aws kms rotate-key-on-demand --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab" } $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyRotationEnabled": true, "NextRotationDate": "2024-03-14T18:14:33.587000+00:00", "OnDemandRotationStartDate": "2024-02-24T18:44:48.587000+00:00" "RotationPeriodInDays": 365 }

수동으로 키 교체

자동 키 교체를 활성화하지 않고 새 KMS 키를 생성하여 현재 KMS 키 대신 사용하려고 할 수 있습니다. 새 KMS 키에 현재 KMS 키와 다른 암호화 구성 요소가 있는 경우 새 KMS 키를 사용하면 기존 KMS 키에서 키 구성 요소를 변경하는 것과 동일한 효과가 있습니다. 한 KMS 키를 다른 KMS 키로 교체하는 프로세스를 수동 키 교체라고 합니다.

비대칭 KMS 키, HMAC KMS 키, 사용자 지정 키 스토어의 KMS 키, 키 구성 요소를 가져온 KMS 키 등 자동 키 교체에 적합하지 않은 KMS 키를 교체하려는 경우에는 수동 교체를 사용하는 것이 좋습니다.

참고

새 KMS 키를 사용하기 시작할 때는 원래 KMS 키가 암호화한 데이터를 해독할 수 있도록 AWS KMS 원래 KMS 키를 활성화한 상태로 유지해야 합니다.

KMS 키를 수동으로 교체하는 경우 애플리케이션에서 KMS 키 ID 또는 키 ARN에 대한 참조도 업데이트해야 합니다. 친숙한 이름을 KMS 키와 연결하는 별칭을 사용하면 이 프로세스를 더 쉽게 수행할 수 있습니다. 별칭을 사용하여 애플리케이션에서 KMS 키를 참조합니다. 그런 다음 애플리케이션에서 사용하는 KMS 키를 변경하려면 애플리케이션 코드를 편집하는 대신 별칭의 대상 KMS 키를 변경합니다. 자세한 내용은 애플리케이션에서 별칭 사용 단원을 참조하세요.

참고

수동으로 교체한 KMS 키의 최신 버전을 가리키는 별칭은 암호화 DescribeKey,,, 및 서명 작업에 적합한 솔루션입니다. GenerateDataKeyGenerateDataKeyPairGenerateMac 또는 과 같이 KMS 키를 관리하는 작업에서는 별칭을 사용할 수 없습니다. DisableKeyScheduleKeyDeletion

수동으로 교체된 대칭 암호화 KMS 키에서 암호 해독 작업을 호출할 때는 명령에서 파라미터를 생략하십시오. KeyId AWS KMS 암호문을 암호화한 KMS 키를 자동으로 사용합니다.

KeyId 파라미터는 비대칭 KMS 키를 사용하여 호출 Decrypt 또는 확인하거나 HMAC KMS 키를 사용하여 호출할 때 필요합니다. VerifyMac 키를 수동으로 교체하는 경우와 같이 KeyId 파라미터 값이 암호화 작업을 수행한 KMS 키를 더 이상 가리키지 않는 별칭인 경우 이러한 요청이 실패합니다. 이 오류를 방지하려면 각 작업에 대해 올바른 KMS 키를 추적하고 지정해야 합니다.

별칭의 대상 KMS 키를 변경하려면 API에서의 작업을 사용하십시오. UpdateAlias AWS KMS 예를 들어, 이 명령은 새 KMS 키를 가리키도록 alias/TestKey 별칭을 업데이트합니다. 작업은 출력을 반환하지 않으므로 이 예제에서는 ListAliases작업을 사용하여 이제 별칭이 다른 KMS 키와 연결되고 필드가 업데이트되었음을 보여줍니다. LastUpdatedDate ListAliases 명령은 의 query파라미터를 사용하여 AWS CLI 별칭만 가져옵니다. alias/TestKey

$ aws kms list-aliases --query 'Aliases[?AliasName==`alias/TestKey`]' { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestKey", "AliasName": "alias/TestKey", "TargetKeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "CreationDate": 1521097200.123, "LastUpdatedDate": 1521097200.123 }, ] } $ aws kms update-alias --alias-name alias/TestKey --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321 $ aws kms list-aliases --query 'Aliases[?AliasName==`alias/TestKey`]' { "Aliases": [ { "AliasArn": "arn:aws:kms:us-west-2:111122223333:alias/TestKey", "AliasName": "alias/TestKey", "TargetKeyId": "0987dcba-09fe-87dc-65ba-ab0987654321", "CreationDate": 1521097200.123, "LastUpdatedDate": 1604958290.722 }, ] }