Перейти к содержимому
ecdsa.com

Ограничения имён (nameConstraints)

Расширение X.509 (OID 2.5.29.30), допустимое только в сертификатах CA, которое ограничивает имена в подчинённых сертификатах с помощью разрешённых и исключённых поддеревьев: DNS-имён, диапазонов IP-адресов, почтовых доменов и имён каталога (directory names).
Другие написанияnameConstraintspermittedSubtreesexcludedSubtreestechnically constrained sub-CA

Ограниченный промежуточный CA, у которого permittedSubtrees содержит dNSName: example.com, может выпускать сертификаты только для example.com и его поддоменов; добавив исключённое поддерево, можно убрать конкретные имена. Проверяющие стороны применяют ограничения к каждому сертификату ниже этого CA при проверке цепочки сертификатов (RFC 5280, § 6.1.3).

Это безопасный способ делегировать выпуск сертификатов: организация может получить технически ограниченный промежуточный CA для собственных доменов, а CA/Browser Forum предъявляет к таким подчинённым CA особые требования к аудиту. Раньше поддержка была неполной (одни клиенты игнорировали расширение, другие выдавали ошибку на критических ограничениях имён), но современные браузеры, OpenSSL, Go и Java его соблюдают.

Подводные камни: ограничения на DNS-имена не распространяются автоматически на имя хоста, указанное только в commonName субъекта, поэтому проверяющие стороны, которые всё ещё читают CN, можно обмануть, а для ограничений на IP-адреса нужны и адрес, и маска.

Стандарты и ссылки

Все термины