AWS KMS에서 고객 관리형 키를 수동으로 교체하려면 어떻게 해야 하나요?

2분 분량
0

AWS Key Management Service(AWS KMS)에서는 AWS KMS 키를 1년에 한 번 자동으로 교체합니다. 1년에 한 번 자동으로 AWS KMS 키를 교체하기 전에 수동으로 교체하려면 어떻게 해야 하나요?

해결 방법

수동 키 교체를 사용하여 현재 키를 교체하기 위한 새 AWS KMS 키를 생성합니다.

이 예제에서는 현재 AWS KMS 키를 새 키로 교체하는 방법을 보여줍니다.

참고: AWS Command Line Interface(AWS CLI) 명령을 실행할 때 오류가 발생할 경우 AWS CLI의 최신 버전을 사용하고 있는지 확인하세요.

1.    이름이 application-current인 별칭을 생성하고 기존 AWS KMS 키에 연결합니다.

acbc32cf8f6f:~ $$ aws kms create-alias --alias-name alias/application-current --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321
acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep application
ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current    alias/application-current    0987dcba-09fe-87dc-65ba-ab0987654321

2.    이름이 application-20180606인 새 별칭을 생성합니다. 이 별칭은 교체할 AWS KMS 키에 대한 이름의 일부로 교체 날짜를 포함합니다. 아래 예제에서 교체 날짜는 2018-06-06입니다. AWS KMS 키에는 다음 두 개의 별칭이 있습니다.

acbc32cf8f6f:~ $$ aws kms create-alias --alias-name alias/application-20180606 --target-key-id 0987dcba-09fe-87dc-65ba-ab0987654321
acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep application
ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-20180606    alias/application-20180606    0987dcba-09fe-87dc-65ba-ab0987654321
ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current     alias/application-current     0987dcba-09fe-87dc-65ba-ab0987654321

3.    다음과 유사한 새 AWS KMS 키를 생성합니다.

acbc32cf8f6f:~ $$ aws kms create-key
{
    "KeyMetadata": {
        "Origin": "AWS_KMS",
        "KeyId": "9bf76697-5b41-4caf-9fe1-e23bbe20f858",
        "Description": "",
        "KeyManager": "CUSTOMER",
        "Enabled": true,
        "KeyUsage": "ENCRYPT_DECRYPT",
        "KeyState": "Enabled",
        "CreationDate": 1528289057.531,
        "Arn": "arn:aws:kms:eu-west-1:123456789012:key/9bf76697-5b41-4caf-9fe1-e23bbe20f858",
        "AWSAccountId": "123456789012"
    }
}

4.    새 AWS KMS 키에 application-current 별칭을 연결합니다. NEW_KMS_KEY_ID를 3단계에서 새로 생성한 키 ID로 교체해야 합니다.

$$ aws kms update-alias --alias-name alias/application-current --target-key-id NEW_KMS_KEY_ID

5.    신규 및 기존 AWS KMS 키가 모두 있습니다. application-current 키를 사용하여 데이터를 암호화합니다. AWS KMS는 데이터를 해독할 때 AWS KMS 키를 자동으로 확인합니다.

acbc32cf8f6f:~ $$ aws kms list-aliases --output text | grep application
ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-20180606    alias/application-20180606    0987dcba-09fe-87dc-65ba-ab0987654321
ALIASES    arn:aws:kms:eu-west-1:123456789012:alias/application-current     alias/application-current     9b5d79d7-f04c-4b30-baf1-deed52a7cc97

중요: 키 교체 수행 시점을 추적하거나 변경 사항을 롤백하려면 현재 AWS KMS 키를 백업으로 보관합니다.

참고: 기존 키가 있는 사용자는 해당 정책을 application-current 키에 복사해야 합니다.

6.    AWS KMS 콘솔에 로그인하여 **고객 관리형 키(Customer managed keys)**를 선택합니다.

7.    [별칭]에서 현재 키를 선택합니다.

8.    [키 정책(Key policy)]에서 [정책 보기로 전환(Switch to policy view)]을 선택합니다.

9.    현재 정책을 복사한 다음 [고객 관리형 키(Customer managed keys)]를 선택합니다.

10.    [별칭(Alias)]에서 application-current를 선택합니다.

11.    [키 정책(Key Policy)]에서 [편집(Edit)]을 선택하고 application-current 정책을 삭제한 후 현재 정책을 붙여넣고 [변경 사항 저장(Save Changes)]을 선택합니다.


관련 정보

AWS Key Management Service에서 키 구성 요소를 가져오려면 어떻게 해야 합니까?

AWS 공식
AWS 공식업데이트됨 일 년 전