本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
搭GetContextKeysForCustomPolicy
配使用 AWS SDK或 CLI
下列程式碼範例會示範如何使用GetContextKeysForCustomPolicy
。
- CLI
-
- AWS CLI
-
範例 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:列出由一個或多個作為檔案輸入提供的自訂JSON原則所參考的前後關聯索引鍵
下列
get-context-keys-for-custom-policy
命令與上一個範例相同,不同之處在於原則是以檔案而非參數的形式提供。由於該命令需要字符串JSON列表而不是JSON結構列表,因此文件必須按以下方式構造,儘管您可以將其折疊為一個字符串。[ "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政策模擬器 (AWS CLI和 AWS API) 中 AWS IAM 使用者指南。
-
有API關詳細資訊,請參閱 GetContextKeysForCustomPolicy
(AWS CLI 指令參考。
-
- PowerShell
-
- 適用的工具 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 指令程式參照。
-
有關的完整列表 AWS SDK開發人員指南和代碼示例,請參閱使用此服務 AWS SDK。本主題也包含有關入門的資訊以及舊SDK版的詳細資訊。