Terraform强制用多个“ subject_alternative_names”替换“ aws_acm_certificate”

问题描述

我正在尝试创建具有多个aws_acm_certificate的{​​{1}}

subject_alternative_names

首次运行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}"] } 的工作与广告中的一样。但是,当我使用完全相同的vars terraform重新运行apply时,出于以下原因,希望重新创建证书:

apply

看来 ~ subject_alternative_names = [ # forces replacement + "xyz.com","www.xyz.com",] 与当前状态相比有所不同。

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

解决方法

subject_alternative_names这样的名称不应包含证书本身的域名。

如果我将subject_alternative_names更改为["www.${local.domain_name}"],这似乎是对的。由于我已经看到许多证书在subject_alternative_names中包含自己的域名,因此不确定是使用subject_alternative_names的错误还是强制使用const link = await dynamicLinks().buildLink({ link: 'https://invertase.io',domainUriPrefix: 'https://test.page.link/post/12345',}); console.log("URLLInk",link); return link; 的正确方法。

如果有人有更好的分析,我很想听听。

,

subject_alternative_names 似乎是关键。向 max.ott 致敬

我能够使用以下方法解决这个问题:

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