Keycloak: нужен ли клиент MIT Kerberos? - PullRequest
1 голос
/ 27 октября 2019

Я использую единый вход keycloak на сервере и хочу включить аутентификацию kerberos https://www.keycloak.org/docs/latest/server_admin/index.html#_kerberos

В документации говорится, что я должен установить клиент Kerberos MIT на сервере keycloak.

Насколько я знаю, в JDK есть классы для протокола kerberos. Например, это было одно из исключений, которые у меня были

Caused by: KrbException: Invalid argument (400) - Cannot find key of appropriate type to decrypt AP REP - AES256 CTS mode with HMAC SHA1-96
at sun.security.krb5.KrbApReq.authenticate(KrbApReq.java:278)
at sun.security.krb5.KrbApReq.<init>(KrbApReq.java:149)
at sun.security.jgss.krb5.InitSecContextToken.<init>(InitSecContextToken.java:108)
at sun.security.jgss.krb5.Krb5Context.acceptSecContext(Krb5Context.java:829)
... 93 more

И вот еще ссылка. https://docs.oracle.com/javase/10/security/single-sign-using-kerberos-java1.htm#JSSEC-GUID-D4230975-A28B-4532-B1DD-3C7219A4867F

Итак, мой вопрос, что на самом деле является клиентом MIT Kerberos? это часть JDK? или это библиотека, от которой зависит JDK? Кстати, я запускаю сервер keycloak на машине с Windows и не должен был устанавливать никаких дополнительных клиентов.

1 Ответ

2 голосов
/ 28 октября 2019

В Linux клиент MIT Kerberos представляет собой пакет ОС, который включает библиотеки C и утилиты командной строки, такие как kinit, klist, ktutil

  • в RedHat / CentOS/ etc sudo yum install krb5-workstation
  • в Ubuntu / etc sudo apt-get install krb5-user


В Windows ОС поставляется с Microsoft реализацией Kerberos (какиспользуется в Active Directory), включая тонну пользовательских расширений и странностей, в том числе специальный «кэш LSA» для учетных данных, который управляется ОС (и который может быть недоступен приложениям сторонних разработчиков, в зависимости от типа ОС и того,не вы настраивали флаг реестра).
Но вы можете установить приложение MIT Kerberos для Windows , которое устраняет разрыв между "стандартными" и "Microsoft" реализациями Kerberos. Каким-то образом.

ПРЕДУПРЕЖДЕНИЕ >> В Windows вы можете получить три разные утилиты klist.exe, в которых перечислены разные кэши билетов с разными параметрами - одна в комплекте с Windows, одна в комплекте с Java, одна в комплекте с приложение MIT Kerberos для Windows ;берегите свой ПУТЬ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...