まとめ
事の起こり
AWS Certificate Manager を使い、クライアント指定のドメインのサブドメインで Amazon 発行のSSLサーバ証明書を発行しようとしたところ、 CAAエラーで失敗しました。
CAAとは?
CAAレコードを確認
$ dig caa xxxxxxx.jp +noedns ;; QUESTION SECTION: ;xxxxxxx.jp. IN CAA ;; ANSWER SECTION: xxxxxxx.jp. 3497 IN CAA 0 issue "letsencrypt.org"
親ドメインに Let's Encrypt のみ許可するCAAレコードが設定されていました。
Amazonで発行する場合、追加でCAAレコードを設定する必要がありました。
お客様の DNS 設定に CAA レコードが存在する場合、Amazon でドメインに証明書を発行する前に、そのレコードが amazon.com、amazontrust.com、awstrust.com、または amazonaws.com のいずれかの CA を指定している必要があります。
Amazonを許可する設定を追加
yyy.xxxxxxx.jp. IN CAA 0 issue "amazon.com"