Roles (роли)
Модели авторизации
Каждая роль может быть переключена в композитный режим (объединение других ролей). Но использовать аккуратно, можно запутаться. Роли по умолчанию
Модель
Процесс
+ / -
Backend-driven
(самый популярный)JWT → roles → проверка в FastAPI
+ простой
+ быстрый
- логика размазана по коду
Token-driven
(через claims)JWT уже содержит всё → backend просто читает
+ без внешних запросов
- сложнее управлять динамикой
Keycloak Authorization Services
Backend → Keycloak → decision
+ централизованная политика
+ ABAC / RBAC / rules
- сложность
- задержка
Название
Композитная
Только в master realm
Назначение
admin
Да
Да
Административные права: управление пользователями, клиентами, ролями и конфигурацией реалма
create-realm
Нет
Да
Создание новых realms через Admin Console или REST API.
default-roles-master
Да
Нет
набор ролей, назначаемых по умолчанию всем новым пользователям master realm.
Включает offline_access, uma_authorization и другие (можно посмотреть внутри composite).
offline-access
Нет
Нет
дает возможность получать offline refresh tokens - живут дольше, не требуют активной сессии пользователя.
uma_authorization
Нет
Нет
позволяет использовать User-Managed Access (UMA) - механизм, при котором пользователь может делегировать доступ к своим ресурсам другим пользователям (используется при ресурсно-ориентированном доступе).