Тип DNS-записи авторизации центра сертификации (CAA) включает issue
параметр (также issuewild
), обозначающий идентификатор центра сертификации, которому разрешено выдавать сертификаты для вашего домена. Это нормально, но немного расплывчато.
При установке значения в ваших собственных записях CAA, как вы должны узнать, какое точное значение должно быть для ваших CA (ов)? В случае letsencrypt они предоставляют документ Вот в котором упоминается, что их идентификатор проблемы letsencrypt.org
, и что это также задокументировано в их Заявление о практике сертификации раздел 4.2.1. Если я проверю сертификат, я вижу в нем различные поля, однако ни одно из них точно не соответствует этой строке, хотя есть такие, которые содержать Это. Это не похоже на строгий или надежный способ убедиться, что CA соответствует тому, что находится в записи CAA - например, что мешает ему соответствовать letsencrypt.org.evilcorp.com
?
Все это работает с человеческой точки зрения, но не очень читаемо компьютером и является уникальным для этого CA.
У меня также есть сертификаты от Comodo, и я нашел различные неавторитетные источники, в которых говорится, что их идентификатор проблемы CAA comodoca.com
(и другие говорят, что это comodo.com
), но я не нашел официального документа, подобного letsencrypt, для этого. В comodoca.com
строка действительно появляется в некоторых полях моего сертификата, но не в контексте, который я ожидал бы надежно найти - например, имя эмитента COMODO ECC Domain Validation Secure Server CA (COMODO CA Limited from GB)
, CRL http://crl.comodoca.com/COMODOECCDomainValidationSecureServerCA.crl
а URI OCSP - http://ocsp.comodoca.com
.
SSLMate имеет Генератор записей CAA и включает в себя список центров сертификации и их идентификаторов эмитентов, но откуда эта информация была получена?
Теперь рассмотрим случай проверки - учитывая сертификат и один или несколько идентификаторов издателя CAA, какие элементы в сертификате должны точно соответствовать издателю CAA? Или эта информация получена из какой-то другой службы, например журнала CT?
Итак, вкратце, откуда следует получать идентификаторы эмитента CAA и как они должны быть надежно проверены?
Подходящий RFC 6844
не требует какого-либо стандарта для эмитента, напротив, он предоставляет почти полную свободу:
Семантика параметров-эмитента определяется только эмитентом.
Но сделаем шаг назад: насколько мне известно, записи CAA не предназначались для использования конечными пользователями для проверки того, выпущен ли сертификат TLS, который они представляют, правильным издателем сертификата.
Он был предназначен для использования только (авторитетным) издателем сертификата для проверки того, что им разрешено выпускать (новый) сертификат для этого хоста / домена.
Только издатель сертификата должен проверить, присутствует ли то, что они ожидают / требуют, в записи CAA, если запись CAA существует.
Эмитент вашего сертификата, то есть ваш ЦС, должен будет сообщить, какой домен (-ы) они распознают в записях проблем CAA. А также какие, если есть, другие параметры, которые им требуются.
Например: Comodo, который использует comodo.com
для своего онлайн-бренда, совершенно бесплатно распознает совершенно другой домен comodoca.com
в записях CAA. На самом деле центры сертификации также не ограничиваются распознаванием только одного домена - например, Comodo распознает четыре разных: comodo.com
, comodoca.com
, usertrust.com
и trust-provider.com
Примечание: Записи CAA используются только при выдаче сертификата. Обратное проектирование того, каким должна быть запись CAA на основе уже выданных действующих сертификатов, не имеет непосредственной цели.
Откуда следует получать идентификаторы эмитента CAA?
Насколько я знаю, в этом отношении нет ничего, что можно было бы легко автоматизировать, кроме ручного подхода: Форум CA / Browser требует единое место для публикации этой информации:
«Действует с 8 сентября 2017 года, раздел 4.2 политики сертификации CA и / или Заявление о практике сертификации ДОЛЖЕН изложить политику или практику СА по обработке записей CAA для полностью квалифицированных доменных имен; эта политика должна соответствовать этим Требованиям. Это должен четко указать набор доменных имен эмитента, который CA распознает в CAA "issue
" или "issuewild
«записи, разрешающие выпуск».