【问题标题】:Cannot set a minimum TLS version for FrontDoor in terraform无法在 terraform 中为 FrontDoor 设置最低 TLS 版本
【发布时间】:2020-06-22 22:12:44
【问题描述】:

我使用的是 terraform 1.44。当我尝试运行它时:

resource "azurerm_frontdoor" "frontdoor" {
  name                                         = "my-fd"
  location                                     = "${azurerm_resource_group.default.location}"
  resource_group_name                          = "${azurerm_resource_group.default.name}"
  enforce_backend_pools_certificate_name_check = false

  routing_rule {
    .....
  }

  backend_pool_load_balancing {
    ......
  }

  backend_pool_health_probe {
    .....
  }

  backend_pool {
    .......
  }

  frontend_endpoint {
    name                                    = "myFrontendEndpoint"
    host_name                               = "my-custom.hostname.com"
    custom_https_provisioning_enabled       = true
    custom_https_configuration {
      certificate_source = "FrontDoor"
      minimum_tls_version = "1.2"
    }
  }
}

失败了

错误: “frontend_endpoint.custom_https_configuration.minimum_tls_version”: 该字段不能设置

根据this GitHub 问题,它应该已经解决了,但是文档链接已损坏...并且在当前文档中没有提及该字段...

如何创建这个前端?如果不设置 minimum_tls_version 它会出错

为前端端点启用自定义域 HTTPS 时出错:frontdoor.FrontendEndpointsClient#EnableHTTPS:发送请求失败:StatusCode=400 -- 原始错误:Code="BadRequest" Message="\"minimumTlsVersion\" 是必需参数。"

【问题讨论】:

    标签: azure terraform tls1.2 azure-front-door


    【解决方案1】:

    来自Azure front door SSL configuration

    2019 年 9 月之后创建的所有 Front Door 配置文件使用 TLS 1.2 作为 默认最小值。

    Front Door 支持 TLS 版本 1.0、1.1 和 1.2。 TLS 1.3 还没有 支持。

    terraform document,属性minimum_tls_version只能从custom_https_configuration块导出。它不能像参数引用一样设置。

    例如,

    ....
          frontend_endpoint {
            name                              = "exampleFrontendEndpoint1"
            host_name                         = "example-FrontDoor.azurefd.net"
    
            custom_https_provisioning_enabled       = true
            custom_https_configuration {
              certificate_source = "FrontDoor"
    
          }
          }
        }
    
        output "minimum_tls_version" {
          value = "${azurerm_frontdoor.example.frontend_endpoint[0].custom_https_configuration[0].minimum_tls_version}"
        }
    

    【讨论】:

    • 谢谢!当我第一次尝试不使用 minimum_tls_version 时,我使用的是 1.42,但它失败了。然后我尝试添加此字段并同时更新 azure 提供程序。但是在 1.44 上,您可以按照您的建议跳过它。不错!
    • 是的,我用的是 1.44
    猜你喜欢
    • 2018-11-10
    • 2015-06-26
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 1970-01-01
    • 2021-06-03
    • 2010-12-15
    • 2014-10-23
    相关资源
    最近更新 更多