когда я получаю доступ к консоли администратора keycloak (! удаленно) и создаю клиента:
keycloak OIDC JSON не имеет открытого ключа
Я ожидал, что в JSON будет что-то вроде:
"realm-public-key": "MIIBIjANBg....
когда я получаю доступ к консоли администратора keycloak (! удаленно) и создаю клиента:
keycloak OIDC JSON не имеет открытого ключа
Я ожидал, что в JSON будет что-то вроде:
"realm-public-key": "MIIBIjANBg....
keycloak.json в новейшем keycloak не имеет открытого ключа области ... на самом деле кажется, что вы используете keycloak версии 2.3.x, в нем были некоторые изменения. Обычно вы можете менять несколько открытых ключей для области. В документе говорится следующее:
В выпуске 2.3.0 мы добавили поддержку ротации открытых ключей. Когда администратор меняет ключи области в консоли администратора Keycloak, клиентский адаптер сможет распознать его и автоматически загрузить новый открытый ключ из Keycloak. Однако эта автоматическая загрузка новых ключей выполняется только в том случае, если у вас нет опции realm-public-key в вашем адаптере с жестко запрограммированным открытым ключом. По этой причине мы больше не рекомендуем использовать параметр realm-public-key в конфигурации адаптера. Обратите внимание, что этот параметр все еще поддерживается, но он может быть полезен, если вы действительно хотите иметь жестко запрограммированный открытый ключ в конфигурации вашего адаптера и никогда не загружать открытый ключ из Keycloak. Теоретически одна из причин этого может заключаться в том, чтобы избежать атаки злоумышленника посередине, если у вас есть ненадежная сеть между адаптером и Keycloak, однако в этом случае гораздо лучше использовать HTTPS, который защитит все запросы между адаптер и Keycloak.
<realm-url>/protocol/openid-connect/certs
.
- person ibotty; 19.09.2017
Я до сих пор не знаю, почему в keycloak OIDC JSON нет открытого ключа (вероятно, из соображений безопасности), но я нашел его в:
Настройки области> Ключи> Просмотр открытого ключа