проблема с использованием Keycloak UserStorageProvider SPI - PullRequest
0 голосов
/ 11 июля 2019

Я реализовал пользовательский SPI Keycloak UserStorageProvider (следующий пункт 11 официального документа: https://www.keycloak.org/docs/latest/server_development/index.html#_user-storage-spi), который выполняет следующее:

  1. Аутентификация пользователей (ранее не существовавших в локальном хранилище) по внешний сервис аутентификации.
  2. Сохраните пользователя (успешно прошедшего проверку подлинности с использованием нашего пользовательского сервиса) в Местный магазин Keycloak.
  3. После того, как пользователи были импортированы в локальный магазин Keycloak (после пользователей успешно вошли в систему), администраторы могут сопоставить роли этим пользователям для авторизации ресурсов из консоли администратора keycloak.

Проблема, с которой я сталкиваюсь, заключается в следующем: шаги 1 и 2 работают отлично. А что касается шага 3, я могу успешно войти в систему с пользователем, который был сохранен в локальном хранилище брелока (после его обнаружения на внешнем UserProvider), НО (в этом и заключается суть проблемы); как только я добавляю какую-либо роль этому импортированному пользователю, я больше не могу войти в эту учетную запись, и журналы показывают, что мой пользовательский UserStorageProvider больше не используется с этого момента при входе в систему для этого пользователя. Каким-то образом присоединение роли к этому пользователю делает его невидимым для моего пользовательского UserStorageProvider (даже если я снова удаляю роль (и)).

В лучшем случае, которого я пытаюсь достичь, я смогу "войти в систему" с пользователем (сохраненным локально после аутентификации из внешнего SPI), даже после назначения ему ролей.

Любая обратная связь будет принята с благодарностью !!

Заранее спасибо за ваши предложения.

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