Как указать регион в шаблоне Cloudformation для проверки сертификата ACM через DNS

Я пишу шаблон Cloudformation, чтобы запросить сертификат ACM для Cloudfront, чтобы иметь SSL через DNS

Мой шаблон:

ACMCertificate: 
  Type: "AWS::CertificateManager::Certificate"
  Properties: 
    DomainName: mywebsite.com
    SubjectAlternativeNames:
      - www.mywebsite.com
    DomainValidationOptions:
          - DomainName: mywebsite.com
            HostedZoneId: !Ref MyHostedZoneId
          - DomainName: www.mywebsite.com
            HostedZoneId: !Ref MyHostedZoneId
    ValidationMethod: DNS

Outputs:
  ACMCertificateArn:
    Value: !Ref ACMCertificate

Проблема: сертификат был создан в регионе аккаунта AWS, в моем случае это eu-west-1. Вы знаете, что этот сертификат нельзя использовать для SSL, его нужно создать в us-east-1

Как указать регион в шаблоне Cloudformation для проверки сертификата ACM?

Любое предложение приветствуется.




Ответы (2)


Вы можете указать регион AWS для создания сертификата, указав регион, не зависящий от региона стека Cloudformation, что, например, позволяет развернуть сертификат в регионе us-east-1 (для использования с Cloudfront) при развертывании стек в регионе eu-west-1. Используя пользовательский ресурс в облачной форме

CreateCertificateCustomResource:
  Type: Custom::CreateCertificates
  Properties:
    ServiceToken: CreateCertificateFunction.Arn
    DomainName: yourdomain
    ValidationDomain: DomainName
    HostedZoneId: yourzoneid
    CertificateRegion: yourRegion
    IdempotencyToken: CreateCertificateCustomReource
    CertificateTafs:
      - Key: Name
        Value: DomainName
person Asri Badlah    schedule 28.12.2020

К сожалению, вы не можете сделать это из шаблона. Вам нужно создать свой стек в us-east-1 вручную. Это означает, что если вы используете для этого AWS Console, вам нужно изменить регион в консоли и создать свой стек в этом регионе с помощью консоли CloudFormation.

Если вы используете create-stack команду, вы можете добавить --region us-east-1 в качестве одного из ее параметров. Для AWS SDK, например boto3, вы можете выполнить аналогичную операцию.

Вы также можете посмотреть StackSets, которые позволяют развертывайте свои шаблоны в нескольких учетных записях и регионах из одного центрального местоположения.

person Marcin    schedule 28.12.2020