Terraform - AWS EC2 IAM 角色
Terraform - AWS EC2 IAM Roles
期待 运行 Terraform 在 AWS 中使用 IAM 角色,删除 access/shared 键等。我这样做对吗,感觉有点奇怪。
所以我有我的 aws_provider.tf
provider "aws" {
region = "${var.aws_region}"
assume_role {
role_arn = "${var.aws_terraform_admin_role}"
}
}
除非我真的给我 EC2 实例 运行ning Terraform 那个角色它不会工作。
我是否遗漏了什么,我在考虑 AWS 方面和 IAM 角色?如果没有分配 EC2 实例,Terraform 是否应该能够承担 IAM 角色?我是否需要扮演另一个角色才能在角色之间切换?
或者这是应该的吗?
谢谢
您的 EC2 实例需要一个 instance role 来赋予它承担您想要用于 Terraform 的角色的权利。例如:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement11111",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::11111111111:role/TerraformRole"
}
]
}
期待 运行 Terraform 在 AWS 中使用 IAM 角色,删除 access/shared 键等。我这样做对吗,感觉有点奇怪。
所以我有我的 aws_provider.tf
provider "aws" {
region = "${var.aws_region}"
assume_role {
role_arn = "${var.aws_terraform_admin_role}"
}
}
除非我真的给我 EC2 实例 运行ning Terraform 那个角色它不会工作。
我是否遗漏了什么,我在考虑 AWS 方面和 IAM 角色?如果没有分配 EC2 实例,Terraform 是否应该能够承担 IAM 角色?我是否需要扮演另一个角色才能在角色之间切换?
或者这是应该的吗?
谢谢
您的 EC2 实例需要一个 instance role 来赋予它承担您想要用于 Terraform 的角色的权利。例如:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement11111",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::11111111111:role/TerraformRole"
}
]
}