我需要使用Terraform为AWS创建一些角色策略,基本角色运行良好,但当我添加S3和日志时,我得到了一个格式错误:
aws_iam_role.lambda_exec_role_s3:创建iam角色lambda_1exec_role_s3:不正确的PolicyDocument:具有禁止字段Resource状态代码:400
这是失败的角色策略:
assume_role_policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
},
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "arn:aws:logs:*:*:*"
}
]
}
EOF
这里的工作角色政策:
assume_role_policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
不能在假定角色策略中添加实际操作。
假定角色策略用于限制角色的假定方式(由用户/EC2实例或ECS任务/AWS服务/跨帐户角色等(。
您需要指定角色可以在策略中执行的实际操作,可以是行操作,也可以是附加到角色的托管策略。