Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CLI GetContextKeysForCustomPolicy
で使用する
以下のコード例は、GetContextKeysForCustomPolicy
の使用方法を示しています。
- CLI
-
- AWS CLI
-
例 1: コマンドラインでパラメータとして提供される 1 つ以上のカスタム JSON ポリシーによって参照されるコンテキストキーを一覧表示するには
次の
get-context-keys-for-custom-policy
コマンドは、指定された各ポリシーを解析し、それらのポリシーが使用するコンテキストキーを一覧表示します。このコマンドを使用して、ポリシーシミュレータコマンドsimulate-custom-policy
とsimulate-custom-policy
を正常に使用するために指定する必要があるコンテキストキー値を特定します。get-context-keys-for-custom-policy
コマンドを使用して、IAM ユーザーまたはロールに関連付けられたすべてのポリシーで使用されるコンテキストキーのリストを取得することもできます。file://
で始まるパラメータ値は、ファイルを読み取り、ファイル名自体ではなくその内容をパラメータの値として使用するようにコマンドに指示します。aws iam get-context-keys-for-custom-policy \ --policy-input-list '
{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/${aws:username}","Condition":{"DateGreaterThan":{"aws:CurrentTime":"2015-08-16T12:00:00Z"}}}}
'出力:
{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }
例 2: ファイル入力として提供される 1 つ以上のカスタム JSON ポリシーによって参照されるコンテキストキーを一覧表示するには
次の
get-context-keys-for-custom-policy
コマンドは前の例と同じですが、ポリシーがパラメータとしてではなくファイルで提供される点が異なります。コマンドは JSON 構造のリストではなく文字列の JSON リストを想定しているため、ファイルを 1 つに折りたたむことはできますが、ファイルは次のように構造化する必要があります。[ "Policy1", "Policy2" ]
そのため、例えば、前の例のポリシーを含むファイルは次のようになっている必要があります。ポリシー文字列内に埋め込まれている各二重引用符の前に「バックスラッシュ」を付けてエスケープする必要があります。
[ "{\"Version\": \"2012-10-17\", \"Statement\": {\"Effect\": \"Allow\", \"Action\": \"dynamodb:*\", \"Resource\": \"arn:aws:dynamodb:us-west-2:128716708097:table/${aws:username}\", \"Condition\": {\"DateGreaterThan\": {\"aws:CurrentTime\": \"2015-08-16T12:00:00Z\"}}}}" ]
その後、このファイルを次のコマンドに送信できます。
aws iam get-context-keys-for-custom-policy \ --policy-input-list
file://policyfile.json
出力:
{ "ContextKeyNames": [ "aws:username", "aws:CurrentTime" ] }
詳細については、IAM ユーザーガイドの「Word Policy Simulator (AWS CLI and AWS API) の使用」を参照してください。 AWS IAM
-
API の詳細については、AWS CLI 「 コマンドリファレンス」のGetContextKeysForCustomPolicy
」を参照してください。
-
- PowerShell
-
- ツール for PowerShell
-
例 1: この例では、提供されたポリシー JSON に含まれるすべてのコンテキストキーを取得します。複数のポリシーを指定するには、値のカンマ区切りリストとして指定できます。
$policy1 = '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/","Condition":{"DateGreaterThan":{"aws:CurrentTime":"2015-08-16T12:00:00Z"}}}}' $policy2 = '{"Version":"2012-10-17","Statement":{"Effect":"Allow","Action":"dynamodb:*","Resource":"arn:aws:dynamodb:us-west-2:123456789012:table/"}}' Get-IAMContextKeysForCustomPolicy -PolicyInputList $policy1,$policy2
-
API の詳細については、「コマンドレットリファレンス」のGetContextKeysForCustomPolicy」を参照してください。 AWS Tools for PowerShell
-