如何在新子域(跨 AWS 账户)上创建和验证 AWS public 证书?

How to create and validate an AWS public certificate on a new subdomain (across AWS accounts)?

我可以访问属于一个客户的多个 AWS 账户,并且想要使用 DNS 验证设置一个 public 证书。我相信这意味着我也需要设置 DNS。

我有两个账户:

新的cert/DNS应该是:

gatekeeper.s.aws.example.com

这是在帐户 dsc-staging 中设置的。我已经完成了“DNS 验证”选项,它说它正在等待中。首先,这两个帐户中都没有此名称的 DNS,因此如果继续这样下去,最终会失败。

因此,在同一个帐户中,我在 Route 53 中创建了一个 HostedZone,它创建了默认的 NS 和 SOA 记录。

现在,在另一个帐户 eds-staging 中,已有以下记录:

我在这里添加了验证记录,作为 CNAME。 (我被告知将验证记录放在本地 Route 53 中是可以的,但我现在选择在这里进行)。

现在,我认为我需要通知 AWS 如何将 gatekeeper.s.aws.example.com 与已知的内部名称 s.aws.example.internal 连接,该名称已经存在并被其他东西使用。我相信连接两者的过程称为“委托”。我得到了一些指示,从 gatekeeper.s.aws.example.com 的本地帐户获取 NS 记录,并将它们复制到另一个帐户的父域 s.aws.example.internal

但是,Route 53 中的 AWS UI 似乎不允许添加另一条 NS 记录 - 是因为一条已经存在了吗?如果可以,我可以将我的四个记录添加到现有的四个记录下(即在同一条记录中)吗?

我相信如果我连接此 DNS 使其可解析,证书将自动变为可验证,并且会自动发生。这个假设正确吗?

我会这样分解:

  1. 将域注册或转移到您的 AWS 主账单账户。这是唯一注册域的帐户。

  2. 在每个子帐户(例如 dev prod)中,为步骤 1 中提供的顶级域创建一个 R53 托管区域。确保步骤 1 中的 NS 服务器已分配到此处的区域。请密切注意他们同意服务器的名称和数量 - 通常是 4 个。

  3. 为根和通配符域 EG example.com 和 *.example.com 创建 ACM 证书请求。请求 DNS 验证。这里的关键是包括通配符。这意味着它适用于域中的任何主机名。

  4. 在 ACM 中,请求该服务为您创建 R53 验证 DNS 记录。这只有在您已在同一帐户中完成第 2 步后才有可能。

  5. 等待审批。可能需要几分钟,也可能需要一整天。大约每隔一小时回来看看。

如果严格遵循此过程,将始终提供经过验证的 ACM 证书,该证书适用于任何 AWS 支持的服务,适用于根域及其下的任何子主机。