1단계: 키 구성 요소 없이 AWS KMS key 생성
기본적으로, KMS 키를 만들면 AWS KMS가 자동으로 키 구성 요소를 생성합니다. 고유한 키 구성 요소를 대신 가져오려면, 키 구성 요소 없이 KMS 키를 만드는 것으로 시작합니다. 그런 다음 키 구성 요소를 가져옵니다. 키 구성 요소 없이 KMS 키를 생성하려면 AWS KMS 콜솔 또는 CreateKey 작업을 사용할 수 있습니다.
키 구성 요소 없이 키를 만들려면 EXTERNAL
의 오리진을 지정하세요. KMS 키의 오리진 속성은 변경할 수 없습니다. 생성한 후에는 가져온 키 구성 요소용으로 설계된 KMS 키를 AWS KMS 또는 다른 소스의 키 구성 요소가 있는 KMS 키로 변환할 수 없습니다.
오리진이 EXTERNAL
이고 키 구성 요소가 없는 KMS 키의 키 상태는 PendingImport
입니다. KMS 키는 PendingImport
상태로 무기한 유지될 수 있습니다. 하지만 암호화 작업에서는 PendingImport
상태의 KMS 키를 사용할 수 없습니다. 키 구성 요소를 가져올 때 KMS 키의 키 상태는 Enabled
상태로 변경되고 암호화 작업에 KMS 키를 사용할 수 있습니다.
AWS KMS는 KMS 키를 생성하고, 퍼블릭 키 및 가져오기 토큰을 다운로드하고, 키 구성 요소를 가져올 때 AWS CloudTrail 로그에 이벤트를 기록합니다. AWS KMS는 또한 가져온 키 구성 요소를 삭제하거나 AWS KMS에서 만료된 키 구성 요소를 삭제할 때 CloudTrail 이벤트를 기록합니다.
키 구성 요소 없이 KMS 키 생성(콘솔)
가져온 키 구성 요소에 대한 KMS 키는 한 번만 생성하면 됩니다. 필요한 만큼 자주 동일한 키 구성 요소를 기존 KMS로 가져오고 다시 가져올 수 있지만, 다른 키 구성 요소를 KMS 키로 가져올 수는 없습니다. 세부 정보는 2단계: 래핑 퍼블릭 키 및 가져오기 토큰 다운로드을 참조하세요.
고객 관리형 키(Customer managed keys) 테이블에서 가져온 키 구성 요소가 있는 기존 KMS 키를 찾기 위해서는 오른쪽 상단 모서리에 있는 톱니바퀴 아이콘을 사용하여 KMS 키 목록에 오리진(Origin) 열을 표시합니다. 가져온 키의 오리진 값은 외부(키 구성 요소 가져오기)입니다.
가져온 키 구성 요소가 있는 KMS 키를 생성하려면 먼저 원하는 키 유형의 KMS 키를 생성하는 지침을 따르세요. 단, 다음과 같은 경우는 예외입니다.
키 사용을 선택한 후 다음을 수행합니다.
-
고급 옵션을 확장합니다.
-
키 구성 요소 오리진(Key material origin)에서 키 구성 요소 가져오기(Import key material)를 선택합니다.
-
I understand the security and durability implications of using an imported key (가져온 키 사용의 보안 및 내구성 영향을 이해합니다) 옆 확인란을 선택하여, 가져온 키 구성 요소를 사용하는 것의 의미를 이해했음을 표시합니다. 이러한 의미에 대한 자세한 내용은 가져온 키 구성 요소 보호 섹션을 참조하세요.
-
선택 사항: 가져온 키 구성 요소로 다중 리전 KMS 키를 생성하려면 리전 특성에서 다중 리전 키를 선택합니다.
-
기본 지침으로 돌아갑니다. 기본 절차의 나머지 단계는 해당 유형의 모든 KMS 키에 대해 동일합니다.
마침을 선택하면 키 구성 요소가 없고 상태(키 상태)가 가져오기 보류 중인 KMS 키가 생성됩니다.
하지만 콘솔에는 고객 관리형 키 테이블로 돌아가는 대신 키 구성 요소를 가져오는 데 필요한 퍼블릭 키와 가져오기 토큰을 다운로드할 수 있는 페이지가 표시됩니다. 지금 다운로드 단계를 계속하거나 취소를 선택하여 이 시점에서 중단할 수 있습니다. 언제든지 이 다운로드 단계로 돌아갈 수 있습니다.
다음: 2단계: 래핑 퍼블릭 키 및 가져오기 토큰 다운로드.
키 구성 요소 없이 KMS 키 생성(AWS KMS API)
AWS KMS API를 사용하여 키 구성 요소가 없는 대칭 암호화 KMS 키를 생성하려면 Origin
파라미터가 EXTERNAL
로 설정된 상태에서 CreateKey 요청을 보냅니다. 다음 예에서는 AWS Command Line Interface(AWS CLI)
$
aws kms create-key --origin EXTERNAL
명령이 제대로 실행되면 다음과 비슷한 출력이 표시됩니다. AWS KMS 키의 Origin
은 EXTERNAL
이고 KeyState
는 PendingImport
입니다.
작은 정보
명령이 실패하면 KMSInvalidStateException
또는 NotFoundException
이 표시될 수 있습니다. 요청을 재시도할 수 있습니다.
{ "KeyMetadata": { "Origin": "EXTERNAL", "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "Description": "", "Enabled": false, "MultiRegion": false, "KeyUsage": "ENCRYPT_DECRYPT", "KeyState": "PendingImport", "CreationDate": 1568289600.0, "Arn": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "AWSAccountId": "111122223333", "KeyManager": "CUSTOMER", "KeySpec": "SYMMETRIC_DEFAULT", "CustomerMasterKeySpec": "SYMMETRIC_DEFAULT", "EncryptionAlgorithms": [ "SYMMETRIC_DEFAULT" ] } }
이후 단계에 사용할 명령 출력에서 KeyId
값을 복사한 후 2단계: 래핑 퍼블릭 키 및 가져오기 토큰 다운로드으로 넘어갑니다.
참고
이 명령은 SYMMETRIC_DEFAULT
의 KeySpec
과 ENCRYPT_DECRYPT
의 KeyUsage
를 사용하여 대칭 암호화 KMS 키를 생성합니다. 선택적 파라미터 --key-spec
및 --key-usage
를 사용하여 비대칭 또는 HMAC KMS 키를 생성할 수 있습니다. 자세한 내용은 CreateKey API 작업을 참조하세요.