Назад | Перейти на главную страницу

Значение поля электронных данных Kerberos

Я использую Kerberos в Windows (программа, отличная от Windows, генерирует токен), и пытаюсь устранить проблему. В сетевой трассировке я вижу, что сервер IIS возвращает KRB5KRB_ERR_GENERIC. Поле электронных данных должно содержать описание проблемы, но оно содержит только следующие байты:

30 0d a1 03 02 01 01 a2 06 04 04 33 01 00 c0

которые в основном не печатаются. Можно ли это расшифровать или это зависит от реализации?

Я могу говорить только за Windows. В электронных данных вы обычно видите расширенный код состояния, возвращенный kerberos.

Трассировка, на которую я сейчас смотрю, имеет ответ от KDC, где я вижу блок типа 72 02 00 C0, который преобразован в c0000272. И используя такой инструмент, как err.exe из http://www.microsoft.com/en-us/download/details.aspx?id=985 чтобы перевести эти коды ошибок windows дает

# for hex 0xc0000272 / decimal -1073741198
  STATUS_NO_MATCH                                                ntstatus.h
# There was no match for the specified key in the index.
# as an HRESULT: Severity: FAILURE (1), FACILITY_NULL (0x0), Code 0x272
# for hex 0x272 / decimal 626
  ERROR_NO_MORE_MATCHES                                          winerror.h
# There are no more matches for the current index
# enumeration.
# 2 matches found for "c0000272"

В данном случае это связано с тем, что SPN не было в списке msds-allowedtodelegateto, и поэтому KDC возвращает эту ошибку, чтобы увидеть, что его нет в списке.

Я не уверен, что ваши электронные данные полны. Но есть то, что похоже на код ошибки Windows 33 01 00 c0.

Это относится к вам или имеет смысл?

# for hex 0xc0001033 / decimal -1073737677
  MSG_CI_IISADMIN_NOT_AVAILABLE                                  querymsg.h
# The IISADMIN service is not available, so virtual roots
# cannot be indexed.%1
# 1 matches found for "c0001033"

Попробуйте сначала включить ведение журнала Kerberos через реестр (HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ Kerberos \ Parameters, создайте новый DWORD для LogLevel со значением 0x1) - посмотрите, появляется ли ваша ошибка KRB5KRB_ERR_GENERIC в Система войти в eventvwr.exe

Поля электронных данных / электронного текста, по-видимому, зависят от конкретной реализации - лучше всего получить перевод из первых уст в журналах событий.