Keycloak сопоставить несколько пользовательских атрибутов - PullRequest
0 голосов
/ 20 марта 2020

Я следовал руководству в [1], чтобы отобразить один атрибут пользователя. Однако мне нужно сопоставить все атрибуты с массивом, чтобы каждый атрибут для конкретного пользователя отображался в массиве атрибутов токена доступа (или, лучше, ограничить атрибуты определенной группой атрибутов, но я предполагаю, что атрибуты пользователя являются только плоская карта ключ / значение).

Я попытался установить подстановочный знак * в поле «Атрибут пользователя» клиентского сопоставителя. Но независимо от того, что я делаю, я могу установить только один атрибут за раз, учитывая фактический ключ атрибута пользовательской карты атрибутов.

[1] Keycloak извлекает пользовательские атрибуты в KeycloakPrincipal

1 Ответ

0 голосов
/ 23 марта 2020

Вы можете написать собственное расширение Keycloak. Одним из решений было бы написать пользовательский Authenticator , где вы можете: фильтровать пользовательские атрибуты -> объединять значения атрибутов -> записывать результат JSON массив в качестве примечания сеанса пользователя.

Затем добавить Client Mapper, который сопоставляет эту сессионную заметку в одной заявке.

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