У меня есть следующий вариант использования:
Пользователи имеют общие роли, такие как:
, что даст им доступ к нескольким функциям в backend.
Но кроме того, они также имеют нефиксированный набор ролей, которые могут быть добавлены во время. Что-то вроде
- devteam-europe (составная роль для роли devteam)
- devteam-asia (составная роль для роли devteam) et c.
Теперь я хочу, чтобы бэкэнд-функции вели себя следующим образом: функция доступа, если роль «devteam»: это работает:)
Но в базовых запросах sql я хочу ограничить набор результатов в зависимости от других ролей. Таким образом, devteam-europe получит другие результаты, как devteam-asia.
Большая проблема в том, что в моем приложении у каждой команды есть UUID, а в KeyCloak роль имеет говорящее имя. Поэтому мне нужно как-то сопоставить
devteam-europe с моим внутренним UUID!
Я мог бы добавить атрибуты или свойства к роли в KeyCloak, но они, похоже, недоступны в JWT .
В моем реальном проекте это приложение с несколькими арендаторами. Есть ли у вас какие-либо идеи о том, как выполнить sh это?
Cheers Maik