グラントトークンを使用する - AWS Key Management Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

グラントトークンを使用する

は、最終的な整合性モデル AWS KMS APIに従います。グラントの作成時、グラントがすぐに有効にならないことがあります。変更が AWS KMS全体に適用されるまでに若干の遅延が生じることがあります。通常、変更がシステム全体に反映されるまでに数秒もかかりませんが、場合によっては数分かかることがあります。システム全体で変更が完全に伝播されると、被付与者プリンシパルはグラントトークンやグラントの証拠を指定せずに、グラントのアクセス許可を使用できます。ただし、新しいため、すべての にまだ知られていない許可がある場合 AWS KMS、リクエストはAccessDeniedExceptionエラーで失敗する可能性があります。

新しいグラントでアクセス許可をすぐに使用するには、グラントのグラントトークンを使用します。CreateGrant オペレーションが返す付与トークンを保存します。次に、 AWS KMS オペレーションのリクエストで付与トークンを送信します。許可トークンは任意の AWS KMS 許可オペレーションに送信でき、同じリクエストで複数の許可トークンを送信できます。

次の例では、 CreateGrantオペレーションを使用して、 GenerateDataKeyおよび Decrypt オペレーションを許可する許可を作成します。これは、CreateGranttoken 変数で返すグラントトークンを保存します。次に、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