Cоздание ролей и групп пользователей с помощью Keycloak
Содержание
Создание группы пользователей
Группы в Keycloak позволяют управлять общим набором атрибутов и маппингом ролей для набора пользователей. Пользователи могут входить в одну или несколько групп. Пользователи наследуют атрибуты и маппинг ролей, назначенные каждой группе. Для управления группами пользователей выберете пункт меню "Groups" в блоке "Manage".
Добавление новой группы
Для добавления новой группы пользователей следует нажать на кнопку "New". В окне добавления новой группы пользователей заполняем обязательное поле Name. Важно! После сохранения изменений, данное поле нельзя будет изменить. Нажимаем кнопку "Save".
После сохранения отобразятся дополнительные вкладки с настройками, которые можно задать, при необходимости:
Настройка атрибутов, вкладка "Attributes" - Настройка пользовательского атрибута в Keycloak
Настройка ролей - вкладка "Role Mappings"
Настройка участников группы - вкладка "Members" и прочие настройки
Вкладка "Attributes" и "Role Mappings" работает по аналогии с настройкой пользователей. Все атрибуты и маппинг ролей будут унаследованы группами и пользователями, которые добавлены в группы.
Добавление пользователей в группы
Чтобы добавить пользователя в группу, необходимо вернуться к настройке пользователей, блок "Manage" пункт меню "User". Далее из списка доступных пользователей выбрать пользователя, которого необходимо добавить в новую группу, перейти в режим редактирование и щелкнуть на вкладку "Groups". Например добавим пользователя в группу Test1, для этого в списке доступных групп "Available Groupps" выберем нужную группу и нажмем кнопку "Join". Удаление пользователя из группы осуществляется аналогичным способом, для удаления используется список Group Membership.
После добавления пользователя в группу он отобразится в списке участников группы на вкладке "Members".
Группы по умолчанию
Группы по умолчанию позволяют автоматически назначать группы для новых пользователей. Чтобы указать группы по умолчанию, необходимо перейти в пункт меню "Groups" в блоке "Manage" и выбрать вкладку "Default Groups".
Иерархия групп
Группы иерархичны. В группа может содержать одну или несколько подгрупп, но у группы может быть только один родитель. Подгруппы наследуют атрибуты и маппинг ролей от родительского элемента. Если у вас есть родительская группа, дочерняя группа и пользователь, который принадлежит только дочерней группе, пользователь наследует атрибуты и маппинг ролей как родительской, так и дочерней группы. Чтобы создать иерархию, нажмите на родительскую группу, для которой вы хотите создать дочернюю группу, и далее нажмите кнопку «Создать». Для того, чтобы создать группу верхнего уровня следует нажать на "Groups" в дереве.