Службам сертификации не удалось обработать запрос.
Одной из основных функций центра сертификации (ЦС) является оценка запросов на сертификаты от клиентов и выдача сертификатов для этих клиентов в случае соответствия запросов предопределенным критериям. Для успешной регистрации сертификата перед отправкой запроса необходимо наличие нескольких элементов. К ним относятся ЦС с действительным сертификатом ЦС, правильно настроенные шаблоны сертификатов, учетные записи клиентов и запросы на сертификаты, а также возможность отправки клиентом запроса в ЦС, проверки запроса и установки выданного сертификата.
Устранение проблем, препятствующих обработке запросов на сертификат.
Обработке запросов на сертификат может препятствовать ряд проблем. Если сообщение журнала событий не содержит всей информации, необходимой для устранения проблемы, дополнительные сообщения об ошибках и предупреждения, предшествующие данному сообщению журнала событий или следующие за ним, могут помочь определить причину.
Чтобы определить и устранить проблемы, которые могут блокировать обработку запросов на сертификат, необходимо сделать следующее.
Подтвердите цепочку сертификатов для центра сертификации (ЦС).
Сформируйте и опубликуйте новые списки отзыва сертификатов.
Подтвердите настроенные точки распространения списков отзыва сертификатов.
Если эти действия не помогают устранить проблему, просмотрите очередь невыполненных запросов в ЦС, чтобы получить информацию о причине сбоя.
Для выполнения следующих процедур необходимо иметь разрешение на управление ЦС либо обладать соответствующими делегированными полномочиями.
Подтверждение цепочки сертификатов для ЦС
Чтобы проверить цепочку для ЦС, выполните следующие действия.
Нажмите кнопку "Пуск", введите "mmc", а затем нажмите клавишу ВВОД.
Если появляется диалоговое окно "Контроль учетных записей пользователей", убедитесь, что вам необходимо именно указанное в нем действие, и нажмите кнопку "Продолжить".
В меню "Файл" щелкните "Добавить или удалить оснастку", щелкните "Сертификаты" и "Добавить".
Щелкните "Учетная запись компьютера", затем нажмите кнопку "Далее".
Выберите компьютер, на котором размещен ЦС, щелкните "Готово" и "OK".
Выберите каждый из сертификатов ЦС в очереди сертификатов и щелкните "Просмотреть сертификат".
Щелкните вкладку "Сведения", а затем щелкните "Копировать в файл", чтобы запустить мастер экспорта сертификатов. Сохраните каждый сертификат с расширением "*.cer".
Откройте командную строку, выполните следующую команду для каждого сертификата ЦС и нажмите клавишу ВВОД: certutil -urlfetch -verify <CAcert.cer>. Замените <CAcert.cer> именем файла сертификата ЦС, сохраненного в шаге 7.
Используйте ту же команду с файлом сертификата для сертификата конечного субъекта (пользователя или компьютера), выданного ЦС, чтобы подтвердить списки отзыва сертификатов как для самого ЦС, так и для цепочки в нем.
Устраните все проблемы, выводимые в командной строке.
Создайте и опубликуйте новые списки отзыва сертификатов
Если данные, выводимые в командной строке, свидетельствуют о том, что срок действия списка отзыва сертификатов для ЦС истек, сформируйте новые базовый и разностный списки отзыва сертификатов в ЦС и скопируйте их в нужные расположения. Для этого может понадобиться перезапустить ЦС вне сети.
В ЦС проверьте текущий опубликованный список отзыва сертификатов. По умолчанию ЦС создает списки отзыва сертификатов в папке %windir%\System32\CertSrv\CertEnroll. Если списки отзыва сертификатов, в данный момент находящиеся в этом расположении, недействительны или срок их действия истек, для публикации нового списка отзыва сертификатов можно использовать следующую процедуру.
Публикация нового списка отзыва сертификатов с помощью оснастки "Центр сертификации"
На компьютере, на котором размещен ЦС, нажмите кнопку "Пуск", выберите "Администрирование" и щелкните "Центр сертификации".
Выберите ЦС и разверните папки под именем ЦС.
Правой кнопкой мыши щелкните папку "Отозванные сертификаты".
Щелкните "Все задачи" и "Опубликовать".
Списки отзыва сертификатов можно также формировать и публиковать из командной строки.
Публикация списков отзыва сертификатов с помощью программы командной строки Certutil
На компьютере, на котором размещен ЦС, нажмите кнопку "Пуск", введите "cmd" и нажмите ВВОД.
Введите "certutil -CRL" и нажмите ВВОД.
Если список отзыва сертификатов считается недоступным, а в локальном каталоге ЦС существует действительный список отзыва сертификатов, подтвердите возможность соединения ЦС с точкой распространения списка отзыва сертификатов, а затем выполните предыдущие действия, чтобы снова сформировать и опубликовать списки отзыва сертификатов.
Списки отзыва сертификатов можно публиковать вручную в доменных службах Active Directory с помощью следующей команды:
certutil -dspublish"<crlname.crl>" ldap:///CN=<CA name>,CN=<CA hostname>,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=<contoso>,DC=<com>?certificateRevocationList?base?objectClass=cRLDistributionPoint
Замените "crlname.crl" именем файла списка отзыва сертификатов, "имя ЦС" и "имя главного узла ЦС" — именами своего ЦС и узла, на котором он запущен, а "contoso" и "com" — пространством имен домена Active Directory.
Подтверждение настроенных точек распространения CRL
Проверьте все настроенные точки распространения списков отзыва сертификатов, чтобы подтвердить, что публикация была успешной, и в сети доступны новые списки отзыва сертификатов.
Проверка настроенных точек распространения списков отзыва сертификатов с помощью оснастки "Центр сертификации"
На компьютере, на котором размещен ЦС, нажмите кнопку "Пуск", выберите "Администрирование" и щелкните "Центр сертификации".
Правой кнопкой мыши щелкните имя ЦС, затем щелкните "Свойства".
Щелкните вкладку "Расширения".
Просмотрите настроенные точки распространения списков отзыва сертификатов и убедитесь в правильности информации.
Проверка URL-адресов настроенных точек распространения списков отзыва сертификатов с помощью Certutil
Откройте окно командной строки в ЦС.
Введите команду "certutil -getreg ca\crlpublicationurls" и нажмите ВВОД.
Проверка очереди невыполненных запросов в ЦС
Чтобы проверить очередь невыполненных запросов в ЦС с помощью оснастки "Центр Сертификации", выполните следующие действия.
На компьютере, на котором размещен ЦС, нажмите кнопку "Пуск", выберите "Администрирование" и щелкните "Центр сертификации".
Щелкните папку "Невыполненные запросы".
Найдите невыполненные запросы, время отправки которых точно или приблизительно совпадает со временем события, и проверьте дополнительные сведения диагностики в таких столбцах, как "Сообщение обработки запроса", "Код состояния запроса" и "Имя инициатора запроса".
Проверка невыполненных запросов с помощью Certutil
На компьютере, на котором размещен ЦС, нажмите кнопку "Пуск", введите "cmd" и нажмите клавишу ВВОД.
Введите "certutil -view LogFail" и нажмите ВВОД.
Введите certutil -view -restrict requestID="<nnn>" и нажмите клавишу ВВОД. Замените "nnn" идентификатором запроса одного из невыполненных запросов в выходных данных команды "LogFail".
Чтобы проверить правильность обработки запроса на сертификат, выполните следующие действия.
Нажмите кнопку Пуск, введите certmgr.msc, а затем нажмите клавишу ВВОД.
Если появляется диалоговое окно Контроль учетных записей пользователей, убедитесь, что вам необходимо именно указанное в нем действие, и нажмите кнопку Продолжить.
В дереве консоли дважды щелкните Личное, затем щелкните Сертификаты.
В меню Действие выберите Все задачи и щелкните Запросить новый сертификат, чтобы запустить мастер регистрации сертификатов.
С помощью мастера создайте и отправьте запрос на любой из доступных видов сертификатов.
В окне Результаты установки сертификата подтвердите правильность выполнения регистрации и отсутствие отчетов об ошибках. Можно также щелкнуть Сведения, чтобы просмотреть дополнительную информацию о сертификате.
Target | Microsoft.Windows.CertificateServices.CARole.2016 | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 22 | ||
Event Source | Microsoft-Windows-CertificationAuthority | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | High | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
WriteToCertSvcEvents | WriteAction | Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.22" Enabled="true" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.2016" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">22</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-CertificationAuthority</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectEvent"/>
<WriteAction ID="WriteToCertSvcEvents" TypeID="Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher"/>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="AlertMessageID515b77767c984710bc8f71a810107927"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>