Что означает код HRESULT 0x80090305 (SEC_E_SECPKG_NOT_FOUND)?

 
Предыдущий Следующий
SEC_E_INTERNAL_ERROR SEC_E_NOT_OWNER

SEC_E_SECPKG_NOT_FOUND

Что означает SEC_E_SECPKG_NOT_FOUND

SEC_E_SECPKG_NOT_FOUND означает, что SSPI не может найти или загрузить security package, указанный приложением. Это отличается от authentication failure уже найденного Kerberos, NTLM или другого provider.

Что проверить

  • Сохраните точное package name из AcquireCredentialsHandle или связанного вызова.
  • Проверьте результат EnumerateSecurityPackages в той же системе и архитектуре процесса.
  • Исключите повреждённую регистрацию или отсутствующий Windows component.
  • Fallback на другой package должен быть осознанной частью security design, а не случайным обходом.

Как подтвердить исправление

После корректировки имени или восстановления provider SSPI должен находить пакет; только затем имеет смысл диагностировать credentials и protocol negotiation.

Что проверить

  • Сохраните точное package name из AcquireCredentialsHandle/InitializeSecurityContext.
  • Проверьте registered packages и architecture/installation state.
  • Не путайте missing package с неуспешной Kerberos/NTLM authentication уже найденного package.

Проверьте результат EnumerateSecurityPackages на той же машине и в той же архитектуре процесса; это отделяет неверное имя package от отсутствующей или повреждённой регистрации SSPI provider.

Как исправить

Используйте установленное корректное package name или восстановите компонент Windows. Fallback на другой package должен быть явной частью security design, а не случайным обходом.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.