| Предыдущий | Следующий |
| CERT_E_MALFORMED | CERT_E_CHAINING |
CERT_E_UNTRUSTEDROOT
Что проверить
При CERT_E_UNTRUSTEDROOT нарушен конкретный контракт: Цепочка сертификатов обработана, но завершается корневым сертификатом, которому поставщик доверия не доверяет. Проверяйте его в контексте построение и policy-проверка цепочки X.509, пока исходные данные ещё не изменены retry или cleanup.
Параметры контрольного случая
- Зафиксируйте полную выбранную цепочку, trust status каждого элемента, verification time, EKU/policy/name и revocation данные диагностики; для этого результата эти данные должны относиться к первому неуспешному вызову, а не к последующей очистке.
- Отдельно проверьте thumbprint фактического root и trust store того контекст безопасности, который выполняет проверку. Это проверяет условие «Цепочка сертификатов обработана, но завершается корневым сертификатом, которому поставщик доверия не доверяет» по фактическим параметрам, а не по имени константы.
Безопасный повтор
Сначала сравнить тот же сертификат при одной изменённой policy/chain предпосылке и повторить проверку; затем верните остальные параметры исходного случая. Причина подтверждается, если результат меняется вместе с проверяемой предпосылкой.
Для этого кода опасна слишком широкая реакция: не добавлять корень в Trusted Root только ради исчезновения HRESULT. Коррекция должна быть привязана к установленной причине.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
