Единый вход Kerberos — klist get — должен ли он работать для каждого пользователя домена?

Я интегрирую SSO (Kerberos) с Keycloak (...)

В процессе устранения неполадок: При использовании команды klist get:

      >klist get HTTP/registered-spn.fqdn.com

Current LogonId is 0:0x145d2d
Error calling API LsaCallAuthenticationPackage (GetTicket substatus): 0x80090342

klist failed with 0xc00002fd/-1073741059

Мой вопрос:

Должен ли «klist get» возвращать положительный результат для КАЖДОГО пользователя домена, который будет использовать единый вход? Или это будет работать только для учетных записей администратора домена?

Учетная запись пользователя, зарегистрированная в SPN, должна иметь все необходимые разрешения. При тестировании «klist get» с учетной записью администратора домена я получаю результат, а с обычным пользователем — нет. Вопрос в том, ожидается ли это, или всем пользователям домена, которые будут использовать единый вход, также потребуются какие-либо специальные разрешения? (Итак, еще раз: должна ли «klist get работать» для всех, и является ли «klist get» первой командой, которая должна работать, прежде чем продолжить?)

1 ответ

Должен ли «klist get» возвращать положительный результат для КАЖДОГО пользователя домена, который будет использовать единый вход? Или это будет работать только для учетных записей администратора домена?

Да, он должен возвращать положительный результат для каждого пользователя. Приобретение билета (какklist getделает) является основной операцией единого входа Kerberos и никоим образом не является привилегированной.

При этом это работает только в том случае, если ваш сеанс входа в систему вообще имеет учетные данные для получения билетов — это означает, что либо вы должны войти в систему как пользователь домена , а не локальный пользователь, либо вы должны хранить учетные данные Kerberos в диспетчере учетных данных, если вы используете локальную учетную запись.

Если вы вошли в систему как пользователь домена:

  1. Проверьте имя участника-службы какой-либо другой службы, которая гарантированно будет работать. Например, поскольку вы, скорее всего, используете Active Directory, протестируйте с помощьюldap/<fqdn_of_dc>илиhost/<fqdn_of_your_own_pc>.

  2. Запустите Wireshark, захватитеport 88и проверьте, происходит ли вообще Kerberos TGS-REQ и не происходит ли сбой по какой-либо причине.

Другие вопросы по тегам