首页 文章

如何销毁Terraform托管默认安全组中的规则?

提问于
浏览
2

当Terraform在VPC中采用默认安全组的所有权时,它将删除所有当前规则并添加 default_security_group 资源中指定的任何规则 . 但是,当您"destroy"资源时,它不会删除它添加到默认安全组的规则 . 我知道它不会删除默认安全组,但我希望它删除它添加的规则 . 有没有直接的方法来删除这些规则?

我目前的解决方法是使用一个包含空 default_security_group 资源的单独模块 . 我在运行destroy之前构建它,并且该构建删除了规则 . 有没有更好的办法?

1 回答

  • 0

    “采用所有权”是什么意思?您是否将默认安全组导入状态文件?

    如果是,也许您应该使用data source而不是资源来处理默认安全组:

    data "aws_security_group" "default" {
      name = "default"
    }
    

    您可以使用 "${data.aws_security_group.default.vpc_id}" 获取默认安全组的ID . 现在只需添加规则,这些规则可以在不触及安全组本身的情况下销毁 .

相关问题