【发布时间】:2019-09-20 03:34:22
【问题描述】:
我正在使用 terraform 使用 IAM 配置文件创建 EC2 实例。设置了所有正确的角色和策略后,我仍然收到错误消息:
UnauthorizedOperation:您无权执行此操作。状态码:403
这是我的 main.tf:
provider "aws" {
region = "us-west-2"
}
resource "aws_instance" "aws_test" {
ami = "ami-image"
instance_type = "t2.micro"
iam_instance_profile = "test-role"
}
这是我的 aws 政策:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Action": [
"s3:*"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"ec2:*"
],
"Resource": [
"*"
],
"Condition": {
"StringEquals": {
"ec2:InstanceType": [
"t2.micro"
]
}
}
},
{
"Effect": "Allow",
"Action": "iam:PassRole",
"Resource": "*"
}
]
}
这是我在 main.tf 中使用的角色 arn
arn:aws:iam:::role/test-role
在谷歌上搜索,我发现文章告诉我这应该可以工作,但我似乎遗漏了一些东西。任何帮助将不胜感激。 提前致谢!!
【问题讨论】:
-
您确定拒绝访问错误与 iam_instance_profile 有关吗?
-
错误说未经授权的操作确实暗示该角色没有适当的权限,不是吗?令人困惑的部分是附加到该角色的策略具有所有正确的权限
-
表示运行 Terraform 的用户没有正确的权限。这是错误的全部范围吗?执行 Terraform 的用户/角色有什么权限?
-
错误只说了这么多,我还在该角色正在使用的策略中附加了策略,似乎提供了所有必需的权限
-
不,不是您授予实例的权限,而是您对用于运行 Terraform 的用户/角色的权限。
标签: amazon-ec2 terraform amazon-iam