| Предыдущий | Следующий |
| SEC_E_CROSSREALM_DELEGATION_FAILURE | SEC_E_ISSUING_CA_UNTRUSTED_KDC |
SEC_E_REVOCATION_OFFLINE_KDC
Первый отказ
Результат SEC_E_REVOCATION_OFFLINE_KDC () следует читать как точную границу: проверка отзыва сертификата KDC не может получить актуальные revocation-данные. Для расследования связывайте его с объектом и операцией в момент возврата, а не с более поздним retry или cleanup.
Точный EN-маркер для поиска по документации: A desktop behind a restricted proxy, captive network, VPN split tunnel, or stale CRL cache can fail while other clients continue to sign in successfully.
. Сверяйте его с тем же timestamp и identity объекта.
Что записать
- SSPI package, target principal и Kerberos exchange step.
- certificate thumbprint/issuer/validity без private key.
- chain/revocation source, KDC identity и точный validation status.
Код-специфическая граница
Недоступность CRL/OCSP не доказывает отзыв сертификата: это отдельное состояние инфраструктуры проверки.
Ещё один code-specific ориентир из исходного EN-описания: A downloaded file is not enough if it is stale, invalid, or signed by an unexpected issuer.
. Он полезен как контроль того, что воспроизводится именно этот boundary, а не соседний HRESULT.
В минимальном тесте оставьте неизменными остальные входы и меняйте только компонент, связанный с маркерами revocation / offline / kdc. Сравните первый return value, достигнутую фазу и состояние объекта после отказа.
Для дополнительной сверки документация описывает проверку так: It is therefore the mirror image of SEC_E_REVOCATION_OFFLINE_C
. Не переносите это условие на другой object generation без повторной фиксации evidence.
Подтверждение исправления
После одного доказанного изменения повторите тот же API. Исправление подтверждено, если прежняя причинная граница пройдена, а новый результат и побочные эффекты соответствуют ожидаемому состоянию.
Технические ссылки
- Microsoft: how smart card clients validate the KDC certificate.
- RFC 5280: CRL distribution points and validation data.
- RFC 6960: OCSP.
Нужно найти другой код? Найти другой код состояния или ошибки.
