Amazon web services AWS with Terraform-安全组规则中的安全组参数
当您查看时,可以看到在入口/出口安全规则中有一个定义Amazon web services AWS with Terraform-安全组规则中的安全组参数,amazon-web-services,terraform,infrastructure-as-code,Amazon Web Services,Terraform,Infrastructure As Code,当您查看时,可以看到在入口/出口安全规则中有一个定义security\u groups参数的选项 这对我来说似乎很奇怪,但也许我遗漏了什么 但是没有提到真实世界的用例 我的问题是:在什么情况下我们需要使用这种配置?您可以使用这种语法将这些入口/出口规则应用于属于特定安全组的任何基础结构 此地形代码,例如: ingress { from_port = "80" to_port = "80" protocol = "tcp" security_groups =
security\u groups
参数的选项
这对我来说似乎很奇怪,但也许我遗漏了什么
但是没有提到真实世界的用例
我的问题是:在什么情况下我们需要使用这种配置?您可以使用这种语法将这些入口/出口规则应用于属于特定安全组的任何基础结构 此地形代码,例如:
ingress {
from_port = "80"
to_port = "80"
protocol = "tcp"
security_groups = [
"${aws_security_group.elb_sg.id}",
]
}
将允许HTTP访问属于elb_sg
安全组的任何基础结构。如果您有大量的基础设施需要进行入口/出口访问,并且不想单独命名所有部件,那么这将非常有用
另一个示例:您可以为弹性搜索群集创建一个安全组,然后使用此语法声明EC2 app server安全组的所有元素都应该具有该群集的入口/出口访问权限。谢谢@Adil B,在您的示例中,如果所有EC2实例共享同一个安全组,这意味着它们共享相同的入站规则。所以我不明白我们在这里保存了什么?这个语法可以让你定义一个出口规则,而不知道基础设施本身的实际CIDR块或IP——比方说我没有EC2实例的静态IP,但仍然希望允许所有实例都访问我的弹性搜索集群。你有没有另一个例子——比如说在一些后端的前端?这是否有用?是的-您可以为您的ALB创建一个安全组,并允许该组中的任何基础设施进入/离开您后端的某些端口,例如,如果我有一个包含许多基础设施部件的SG,并且希望允许SG中的所有项目进入另一个SG中的项目,那么我通常会使用这种语法,但ALB示例的SG中可能只有一个项目。