我正在尝试使用AWS托管策略创建IAM角色,但是它要求我提供策略文档。
aws iam create-role --role-name test-role
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: argument --assume-role-policy-document is required
我正在尝试附加AWSLambdaFullAccess
这样的AWS托管策略
答案 0 :(得分:2)
信任策略定义哪些主要实体(帐户,用户,角色和联合用户)可以担任该角色。每个IAM角色都需要一个信任策略。
通过CLI创建角色时,必须指定信任策略。之后,可以使用attach-role-policy
或put-role-policy
命令将基于身份的策略(托管/内联)附加到角色。
以下信任策略使Lambda服务担当此角色。您必须使用assume-role-policy-document
选项将此文件作为命令的输入。
trust-policy.json
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
aws iam create-role --role-name Test-Role --assume-role-policy-document file://trust-policy.json
aws iam attach-role-policy --policy-arn arn:aws:iam::aws:policy/AWSLambdaFullAccess --role-name Test-Role