Ошибка В запросе отсутствует информация о шаблоне сертификата 0x80094801: причины и способы устранения

Знакома ошибка «В запросе отсутствует информация о шаблоне сертификата»? Разбираем причины сбоя 0x80094801 в Active Directory и показываем, как быстро всё исправить.

Бесплатная консультация юриста

+7 (800) 301-07-30

Реклама jurik.ru

Ошибка «В запросе отсутствует информация о шаблоне сертификата» (в англоязычной версии — «The request contains no certificate template information», код 0x80094801, CERTSRV_E_NO_CERT_TYPE) — одна из самых распространённых проблем при работе с центром сертификации (Certification Authority, CA) в инфраструктуре Microsoft Active Directory. В этой статье мы подробно разберём, почему возникает эта ошибка и как её устранить.

Что означает эта ошибка

Корпоративный центр сертификации (Enterprise CA) в Windows Server выдаёт сертификаты только на основе шаблонов сертификатов. Шаблон определяет:

  • назначение сертификата (проверка подлинности пользователя, компьютера, подпись кода и т.д.);
  • срок действия;
  • размер и алгоритм ключа;
  • права на запрос сертификата;
  • способ формирования имени субъекта.

Если в запросе на сертификат (CSR) нет явного указания на шаблон, центр сертификации не понимает, по каким правилам выдавать сертификат, и отклоняет запрос с указанной ошибкой.

Типичные сценарии возникновения

Подача CSR через веб-интерфейс CA

Чаще всего ошибка появляется при использовании веб-страницы регистрации (https://server/certsrv), когда администратор вставляет готовый запрос, созданный на стороннем устройстве (веб-сервер Apache/Nginx, сетевое оборудование, Linux-система). Такой CSR, естественно, не содержит сведений о шаблоне Microsoft.

Использование certreq.exe

При подаче запроса командой certreq -submit request.csr без указания атрибута шаблона возникает та же проблема.

Автоматическая регистрация (autoenrollment)

Ошибка может появляться в журнале событий, если шаблон не опубликован на CA или у учётной записи нет прав на регистрацию.

Способы решения

Способ 1. Указать шаблон через веб-интерфейс

При подаче запроса через certsrv выберите «Расширенный запрос сертификата» и в поле «Шаблон сертификата» явно укажите нужный шаблон, например «Веб-сервер» (Web Server).

Способ 2. Добавить атрибут шаблона через certreq

Подайте запрос командой:

certreq -submit -attrib "CertificateTemplate:WebServer" request.csr

Здесь WebServer — внутреннее имя шаблона (без пробелов). Узнать имена доступных шаблонов можно командой:

certutil -CATemplates

Способ 3. Включить шаблон в INF-файл запроса

Если запрос создаётся с помощью certreq -new, добавьте в INF-файл строку:

RequestType = PKCS10
[RequestAttributes]
CertificateTemplate = WebServer

Способ 4. Проверить публикацию шаблона на CA

  1. Откройте консоль «Центр сертификации» (certsrv.msc).
  2. Перейдите в раздел «Шаблоны сертификатов».
  3. Убедитесь, что нужный шаблон присутствует в списке. Если нет — выберите «Создать» → «Выдаваемый шаблон сертификата» и добавьте его.

Способ 5. Проверить разрешения на шаблон

В консоли «Шаблоны сертификатов» (certtmpl.msc) откройте свойства шаблона, вкладку «Безопасность» и убедитесь, что у пользователя или компьютера есть права «Чтение» и «Регистрация» (Enroll).

Дополнительные рекомендации

  • Для автономного (Standalone) CA шаблоны не используются — там эта ошибка не возникает, но и возможности управления ограничены.
  • Проверяйте журнал событий «Приложение» на CA — события с кодом ошибки помогают точно определить причину.
  • После изменения разрешений на шаблон может потребоваться время на репликацию Active Directory.

Ошибка «В запросе отсутствует информация о шаблоне сертификата» решается в большинстве случаев простым указанием шаблона при подаче запроса — через веб-интерфейс, параметр -attrib утилиты certreq или INF-файл. Если шаблон указан, но ошибка сохраняется, проверьте публикацию шаблона на CA и права доступа к нему. Следуя приведённым шагам, вы быстро восстановите выдачу сертификатов в вашей инфраструктуре.