将安全组添加到另一个安全组的入站规则中,作为Terraform(AWS)的源
我无法将安全组“sg0”作为Terraform的源添加到另一个安全组“sg1”的入站规则中。(我使用将安全组添加到另一个安全组的入站规则中,作为Terraform(AWS)的源,terraform,aws-security-group,inbound-security-rule,Terraform,Aws Security Group,Inbound Security Rule,我无法将安全组“sg0”作为Terraform的源添加到另一个安全组“sg1”的入站规则中。(我使用地形v0.15.4) 这是我尝试的代码: resource "aws_security_group" "sg0" { .......... } resource "aws_security_group" "sg1" { .......... ingress { from_port
地形v0.15.4
)
这是我尝试的代码:
resource "aws_security_group" "sg0" {
..........
}
resource "aws_security_group" "sg1" {
..........
ingress {
from_port = 5432
to_port = 5432
security_groups = [aws_security_group.sg0]
protocol = "tcp"
}
..........
}
但我得到的错误如下:
Error: Incorrect attribute value type
│
│ on main.tf line 235, in resource "aws_security_group" "sg1":
│ 235: security_groups = [aws_security_group.sg0]
│ ├────────────────
│ │ aws_security_group.sg0 is object with 13 attributes
│
│ Inappropriate value for attribute "security_groups": element 0: string required.
我希望得到与下面相同的结果,这是我在没有地形的情况下手动完成的。我该怎么做
您需要将“sg0”的
安全组id
作为源添加到“sg1”的入站规则中。因此,您只需在aws\u security\u group.sg0
之后添加.id
,如下所示
resource "aws_security_group" "sg0" {
..........
}
resource "aws_security_group" "sg1" {
..........
ingress {
from_port = 5432
to_port = 5432
security_groups = [aws_security_group.sg0.id] # Add .id here!!
protocol = "tcp"
}
..........
}