Сбои автовыдачи сертификатов AD CS (Autoenrollment): решение
Симптомы сбоя автоматической выдачи сертификатов (Autoenrollment)
В журнале Application клиентских компьютеров или серверов регистрируются ошибки от источника CertificateServicesClient-AutoEnrollment:
- Event ID 6: «Automatic certificate enrollment for local system failed to enroll for one Computer certificate (0x80070005, Access is denied)».
- Event ID 13: «Certificate enrollment for local system failed to enroll for template (0x80094004, The requested certificate template is not supported by this CA)».
| Симптом | Причина | Последствия |
|---|---|---|
Сертификаты не появляются в хранилище certlm.msc | Не настроены права «Autoenroll» в шаблоне сертификата | Отказ авторизации 802.1X, IPsec или RDP SSL |
| Ошибка 0x80070005 (Access is denied) | У группы Domain Computers нет права «Регистрация» (Enroll) | Клиенты не могут отправить запрос CSR в CA |
| Ошибка 0x80094004 | Шаблон сертификата не опубликован на Центре Сертификации | Центр сертификации отклоняет входящие запросы |
Пошаговое устранение сбоев Certificate Autoenrollment
- Включите политику автовыдачи сертификатов в доменном GPO:
В редакторе gpmc.msc перейдите: Конфигурация компьютера > Параметры Windows > Параметры безопасности > Политики открытого ключа > Клиент службы сертификации — автоматическая подача заявок > Установите «Включено» и отметьте галочками:
- Обновлять сертификаты с истекшим сроком действия.
- Обновлять сертификаты, использующие шаблоны сертификатов.
- Настройте разрешения безопасности на шаблоне сертификата: откройте оснастку
certtmpl.msc, выберите свойства нужного шаблона > вкладка Безопасность (Security):
- Группе
Domain Computers(илиDomain Users) назначьте права: Read (Чтение), Enroll (Подача заявок), Autoenroll (Автоматическая подача заявок).
- Опубликуйте шаблон на выпускающем Центре Сертификации (CA):
# Проверка опубликованных шаблонов на CA через PowerShell:
Get-CATemplate
# Публикация нового шаблона на сервере CA:
Add-CATemplate -Name "ИмяШаблонаСертификата"- Принудительно запустите процесс автовыдачи на клиентской машине:
# Принудительное обновление групповых политик и триггер автовыдачи:
gpupdate /force
certutil -pulseСовет: Команда certutil -pulse мгновенно активирует процесс опроса AD CS без необходимости перезагрузки компьютера.
Частые вопросы (FAQ)
Где посмотреть полученные компьютером сертификаты?
В оснастке certlm.msc (Сертификаты локального компьютера) в папке 'Личные' (Personal) -> 'Сертификаты'.
Почему Autoenrollment не выдает сертификаты пользователям?
Политика автоподачи заявок должна быть включена не только в Конфигурации компьютера, но и в 'Конфигурации пользователя' (User Configuration -> Public Key Policies).
Что означает ошибка 0x80094042 при запросе сертификата?
Ошибка означает, что Центр Сертификации (CA) недоступен по сети или остановлена служба CertSvc.
Как очистить кэш шаблонов сертификатов на клиенте?
Удалите кэш в реестре: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\CertificateTemplateCache и выполните certutil -pulse.