권한 부여 토큰 사용 - AWS Key Management Service

권한 부여 토큰 사용

AWS KMS API는 결과적 일관성 모델을 따릅니다. 권한 부여를 생성할 때 권한 부여가 즉시 유효하지 않을 수 있습니다. 변경 사항이 AWS KMS 전체에 적용되기까지 잠깐의 지연이 있을 수 있습니다. 변경 사항이 시스템 전체에 전파되는 데에는 일반적으로 몇 초도 걸리지 않지만 경우에 따라 몇 분 정도 걸릴 수도 있습니다. 변경 사항이 시스템 전체에 완전히 전파되면 피부여자 보안 주체는 권한 부여 토큰이나 권한 부여에 대한 증거를 지정하지 않고 권한 부여의 권한을 사용할 수 있습니다. 그러나 권한 부여가 AWS KMS 모두에 아직 알려지지 않았을 만큼 새로운 경우 요청이 AccessDeniedException 오류와 함께 실패할 수 있습니다.

새 권한 부여에서 권한을 즉시 사용하려면 권한 부여에 대한 권한 부여 토큰을 사용하십시오. CreateGrant 작업으로 반환되는 권한 부여 토큰을 저장합니다. 그런 다음 AWS KMS 작업의 요청에 권한 부여 토큰을 제출합니다. 모든 AWS KMS 권한 부여 작업에 권한 부여 토큰을 제출할 수 있으며 동일한 요청에서 여러 권한 부여 토큰을 제출할 수 있습니다.

다음 예에서는 CreateGrant 작업을 사용하여 GenerateDataKeyDecrypt 작업을 허용하는 권한 부여를 생성합니다. CreateGrant에서 반환되는 권한 부여 토큰을 token 변수에 저장합니다. 그런 다음 GenerateDataKey 작업에 대한 호출에서 token 변수의 권한 부여 토큰을 사용합니다.

# Create a grant; save the grant token $ token=$(aws kms create-grant \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --grantee-principal arn:aws:iam::111122223333:user/appUser \ --retiring-principal arn:aws:iam::111122223333:user/acctAdmin \ --operations GenerateDataKey Decrypt \ --query GrantToken \ --output text) # Use the grant token in a request $ aws kms generate-data-key \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ –-key-spec AES_256 \ --grant-tokens $token

권한이 있는 위탁자는 권한 부여가 AWS KMS를 통해 제공되기 전에도 권한 부여 토큰을 사용하여 새로운 권한 부여를 사용 중지할 수도 있습니다. (RevokeGrant 작업은 권한 부여 토큰을 허용하지 않습니다.) 자세한 내용은 권한 부여 사용 중지 및 취소 섹션을 참조하세요.

# Retire the grant $ aws kms retire-grant --grant-token $token