微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用CloudFormation自动更新名称服务器并验证SSL证书?

如何解决如何使用CloudFormation自动更新名称服务器并验证SSL证书?

AWS文档声称,如果我在另一个DNS域名中有一个注册域,那么我必须在该注册域上更新名称服务器,因此我想如果我通过指定在R53上注册的域来创建托管区域,名称服务器将自动更新。这是我的CloudFormation的一部分:

   HostedZone:
    Type: "AWS::Route53::HostedZone"
    Properties:
      Name: example.com

我确实已经在R53上注册了example.com,但是当我转到该域时,它的托管服务器SOA记录中的域名服务器却与此不同。

如果我这样做,文档也声称https://aws.amazon.com/blogs/security/how-to-use-aws-certificate-manager-with-aws-cloudformation/

我确实这样:

  SSLCertificate:
    Type: AWS::CertificateManager::Certificate
    Properties:
      DomainName: example.com
      ValidationMethod: DNS
      DomainValidationoptions:
        - DomainName: example.com
          HostedZoneId: !Ref HostedZone

它说应该已经自动验证了SSL证书,但是堆栈在这里停止了,我必须去证书管理器(当然是在更新名称服务器之后),即使单击“导入到R53”(CNAME), CNAME是在托管区域中自动创建的,但其值有误,然后堆栈继续前进。

我做错什么了吗?

解决方法

“错误的CNAME记录”可能是此处的关键字,您是否尝试过从CF模板中删除证书资源,使用它更新stavk,清理CNAME条目,确保从ACM中删除了证书然后添加将证书资源再次添加到CF模板?

我的猜测朝着CloudFormation如何更新资源的方向发展。对于证书,大多数更改都需要重新创建,这意味着首先创建一个新证书,然后在成功创建新证书后删除旧证书。 男性有这种行为,但有时会引起问题。

还要确保DomainNameValidation属性字段中的相同。由于配置错误,以下模板无法验证:

Resources:
  Certificate:
    Type: AWS::CertificateManager::Certificate
    Properties:
      DomainName: www.example.com
      DomainValidationOptions:
      - DomainName: example.com
        HostedZoneId: !Ref Zone
      ValidationMethod: DNS

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。