Настройка sso через keycloak
Поставили задачу настроить sso через saml для приложения на базе corteza.
Скажу сразу, тут я полный профан. Поднял отдельным сервисом key cloak. Настроил авторизацию через пользователей keycloak. Т. Е. У меня в key cloak задан пользователь и при нажатии в приложении на кнопку авторизации через saml меня редиректит в IDP после чего я ввожу даные от учетки созданной в kc.
Собственно вопрос. Как мне настроить key cloak так, что бы он проверял учётные данные не из собственного списка, а из базы юзеров приложения?
Ответы (1 шт):
Для этого понадобится написать небольшой SPI-плагин для keycloak, разместить его в инсталляции КК и делегировать ему (через админку КК) возможность управлять аутентификацией. Но есть нюанс, плагин должен быть упакован в JAR-кy, и соот-но быть написан на Java! Интеграций на Go я не нашел в поиске, но может у вас получится.
Плагин должен содержать имплементацию интерфейса org.keycloak.authentication.Authenticator, которая умеет обращаться в вашу БД с юзерами/аккаунтами, например посредством REST-вызовов к сервису-обёртке или напрямую в БД - тут уже есть пространство для манёвров.
Пример реализации плагина можно посмотреть на GitHub