[1] subjectAltName (SAN) は、証明書においてドメイン名や IPアドレスなどを記述する欄です。
[12] TLS + PKIX による service identity の検証では、 サーバー証明書中の本欄に記されたドメイン名がアクセスしているサーバーのドメイン名と一致しているかが検証されます。
[6] 値は、 GeneralNames
です >>2。
[23] HTTPS 用の証明書では dNSName
が1個以上含められるのが普通です。
[24] 稀に iPAddress
で IPv4アドレスやIPv6アドレスが含められる場合があります。
[25] それ以外はほとんど見かけません。
[26] なお dNSName
の構文は IA5String
で非ASCII文字は使えませんが、
IDN は Aラベルを使うので支障ありません。
[29]
dNSName
として記述されるドメイン名の組合せに制約はありません。
同じドメインのサブドメインでも構いませんし、
異なる TLD のドメインが混じっていても構いません。
ワイルドカードドメインも使えます。
[4] CA は SAN に対応しなければなりません >>3, >>13。
[14] BR に従う CA が発行する証明書の SAN は、
最低1つのエントリーを含まなければなりません。各エントリーは
dNSName
または iPAddress
でなければなりません。 >>13
Subject
欄における subjectAltName
の指定[19] CSR において (SAN 拡張ではなく) subject
欄において
subjectAltName
という欄に DNS.1=domain1.example, DNS.2=domain2.example
のような値を指定する例 >>17, >>18 が示されていることがあります。
[20] CSR を受け取って証明書を発行する CA はこの指定を使ってくれる >>18 と説明されています。
[21] 証明書の subject
欄にこのような指定を含めても、
Firefox も Chrome も IE も認識しないようです。
OpenSSL によって CSR から証明書を発行しても、
CSR の subject
がそのまま証明書に使われるだけで、
証明書拡張に変換されるわけではないようです。
[10] 369112 – With HTTPS, the Subject Common Name gets ignored if subjectAltName extension is present. ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=369112
[11] 553749 – mozilla.org sites should use an SSL certificate with a subjectAltName ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=553749
[15] gitやcurlやwgetでGitHubにアクセスするとcertification errorになる原因を調べてみた - Dマイナー志向 ( 版) http://d.hatena.ne.jp/tmatsuu/20110614/1308010044
[16] certificates - Provide subjectAltName to openssl directly on command line - Information Security Stack Exchange ( 版) http://security.stackexchange.com/questions/74345/provide-subjectaltname-to-openssl-directly-on-command-line
[22] 自堕落な技術者の日記 : 最近の証明書の話題(2): CloudFlare DNS 1.1.1.1サイトのIPv6証明書 - livedoor Blog(ブログ) () http://blog.livedoor.jp/k_urushima/archives/1839342.html