CAA (Certificate Authority Authorization)は、RFC6844で定義されているDNSリソースレコード特定のドメイン名に対して、どのCAが証明書を発行できるのかを制限するPKI環境でのセキュリティ強化となります。
CA/ブラウザフォーラムではBallot187により、加盟CAベンダーに対して、2017年9月8日以降は証明書の発行時に誤発行を防ぐ目的でCAAレコードを確認することを義務付けました。
CAAレコードのプロパティタグについて
DNSドメイン名所有者はCAAレコードにホスト名と1つ以上の認証局を登録することで、そのホスト名の証明書を発行する認証局を限定し、登録されていないCAは証明書の発行が行えなくなります。何も設定がされていない場合は、どの認証局でも証明書を発行することができます。
大まかな役割
DNSドメイン名所有者 | CAAレコードにホスト名と認証局を登録します。 |
---|---|
CA事業者 | CAAレコードの記載内容を確認します。 SubjectAltNameのDNS NameのCAAレコードを確認し、RFC6844で設定されている処理手順に沿ってチェックします。 |
RFC6844で指定されている「issue」、「issuewild」、「iodef」のプロパティタグについては、2013年に弊社のブログにて説明をしておりますが、DNSドメイン名所有者はこちらのタグを用いてホスト名に対し、発行が行える認証局を設定します。
issue | 指定されたCAは指定のホスト名の証明書を発行することができます。 |
---|---|
issuewild | ワイルドカードドメインに対して証明書を発行するCAの指定を行います。「issuewild」は「issue」より優先されます。 |
iodef | 証明書発行者もしくはドメイン名所有者のセキュリティポリシー違反をした証明書発行要求、または証明書発行要求のレポートを受け取りたい場合に設定します。連絡先メールアドレスを「mailto:」で記載します。 |
※GMOグローバルサインでは現在、非対応となっております。
登録方法のサンプル
CAブラウザフォーラムに加盟しているCA側での対応は2017年9月8日までですが、DNSサーバや対応しているサービスプロバイダはまだまだ一般的とはいえません。
CAAレコードに関する登録方法等に関しては、自社にてご設定いただくものになり、一例ですがクラウドフレア(ベータ版)の設定画面はこちらとなります。
【1】クラウドフレア(ベータ版)の設定画面より、「CAA」を選択します。
(古い環境ではCAAの代わりにTYPE257を使ったりもします。)
【2】ホスト名に対し、GMOグローバルサインの証明書のみ発行を認める場合は「0 issue "globalsign.com"」のように記載します。
【3】もしワイルドカード証明書を発行するのであれば、「0 issuewild "globalsign.com"」のように記載します。
example.com. IN CAA 0 issue "globalsign.com"
example.com. IN CAA 0 issuewild ";"
この場合は「example.com」に対し、通常の証明書はGMOグローバルサインからはOKですが、ワイルドカード証明書はどこからも出しません。
example.com. IN CAA 0 issue ";"
example.com. IN CAA 0 issuewild "globalsign.com"
この場合は「example.com」に対し、ワイルドカード証明書はGMOグローバルサインからはOKですが通常の証明書はどこからも出しません。
example.com. IN CAA 0 issue "globalsign.com"
この場合は「example.com」に対し、GMOグローバルサインからは通常の証明書、ワイルドカード証明書の両方を出すことができます。
CAAレコードに登録が行える環境にて運用されているのでしたら、不正発行を防ぐ為にCA事業者を登録することをお奨めいたします。
関連リンク