我正在创建角色并希望授予创建子网的权限,但仅限于特定的 VPC 内。我的 terraform 代码如下所示
statement {
actions = [
"ec2:CreateSubnet",
]
resources = ["*"]
condition {
test = "StringEqualsIgnoreCase"
variable = "ec2:VpcID"
values = ["vpc-xxxx64eeb9480xxxx"]
}
}
但它不起作用。授权错误。如何限制特定 VPC 的策略?
您的条件块中有一个小问题。您使用的条件块适用于 S3 存储桶策略,而不适用于与 EC2 相关的 IAM 策略。
要将子网创建权限限制到特定 VPC,您应该对 ec2:VpcId 使用 StringEquals 条件。试试这个:
statement {
actions = [
"ec2:CreateSubnet",
]
resources = ["*"]
condition {
test = "StringEquals"
variable = "ec2:VpcId"
values = ["vpc-xxxx64eeb9480xxxx"]
}
}