ちょっとハマったのでメモ。
まとめ
- ACM で手作業を完全に廃して自動更新するには DNS でドメインの検証を行う必要がある
- その場合、指定ドメインか www で HTTPS 接続を受け付け、対象の ACM 発行証明書でレスポンスを返す必要あり
- この証明書に矛盾があると自動更新は適用できない
参考
ハマったのはワイルドカードと更新時の検証と www の関係
ハマった環境の状態
- 人間向けドメインである www はフルマネージドホスティングで SSL 証明書の自動更新を設定している、つまり非 ACM の証明書
- その他のドメインは丸ごと ACM でワイルドカード証明書を発行
ここで 1 と 2 の証明書の発行元が食い違っている。食い違っていても発行自体はできる。DNS で CNAME 設定が正しくできればよいだけ。
問題は更新時。更新の際には
に従って ワイルドカード証明書の検証のために www にアクセスがくる。例えば
*.example.com
の証明書を発行していたとして、その検証のために
www.example.com
に HTTPS のリクエストがくる。
ここで www が ACM の証明書を返さないと「自動更新資格が使用不可」という状態になる。ACM 管轄外の証明書に対して自動更新を適用することはできないと判断される。
※ ちなみに、今回はワイルドカード証明書をやめることで矛盾を解消して自動更新の方を優先した。