Terraform 地形部队替换';aws#acm#U证书';具有多个';受试者的备选名称';

Terraform 地形部队替换';aws#acm#U证书';具有多个';受试者的备选名称';,terraform,terraform-provider-aws,Terraform,Terraform Provider Aws,我正在尝试创建一个具有多个主题\u备选名称的aws\u acm\u证书 resource "aws_acm_certificate" "cert" { provider = aws.acm domain_name = local.domain_name validation_method = "DNS" subject_alternative_names = [local.domain_na

我正在尝试创建一个具有多个
主题\u备选名称的
aws\u acm\u证书

resource "aws_acm_certificate" "cert" {
  provider          = aws.acm
  domain_name       = local.domain_name
  validation_method = "DNS"
  subject_alternative_names = [local.domain_name, "www.${local.domain_name}"]
}
第一次运行
apply
就像广告宣传的那样有效。但是,当我使用完全相同的vars重新运行
apply
时,terraform希望重新创建证书,原因如下:

   ~ subject_alternative_names = [ # forces replacement
       + "xyz.com",
         "www.xyz.com",
     ]
与当前状态相比,
[local.domain\u name,“www.${local.domain\u name}”]
似乎有所不同


关于这里发生的事情有什么想法吗?

看起来像是
主题\u备选名称
不应该包括证书自己的域名

如果我将
subject\u alternative\u names
更改为
[“www.${local.domain\u name}”]
似乎做了正确的事情。我不确定这是否是一个错误或使用
subject\u alternative\u names
的正确方法的强制执行,因为我已经看到许多证书在
subject\u alternative\u names
中包含了自己的域名


如果有人有更好的分析,我很乐意听到。

主题(可选)名称似乎是关键。麦克斯·奥特的荣誉

我能够通过以下方式解决此问题:

resource "aws_acm_certificate" "vpn" {
  domain_name       =  "vpn.${var.domain_name}"
  certificate_authority_arn =aws_acmpca_certificate_authority.ca.arn
  subject_alternative_names = []

顺便说一句,我只是在遵循terraform文档中的描述,我使用的是
TerraformV0.13.0