Настройка KeyCloak
Подсистема управления доступом и её пользовательский интерфейс в Salt.Box реализованы на основе программного продукта с открытым исходным кодом Keycloak, распространяемого по лицензии Apache License 2.0.
Вход в KeyCloak
Войдите в веб-интерфейс подсистемы управления доступом по адресу:
https://<адрес_сервера_Salt.Box>/auth/keycloak/
Если развёртывание Salt.Box выполнено в контейнеризаторе приложений Docker, используйте пароль учётной записи admin, сохранённый в файле /secrets/keycloak-admin-password в папке проекта Рис. 1.
![]() |
|---|
Создание нового реалма
Учётная запись admin принадлежит реалму Keycloak по умолчанию с идентификатором master.
По соображениям безопасности не рекомендуется создавать пользователей Salt.Box в данном реалме.
Откройте список реалмов Рис. 2 [1] и нажмите кнопку Создание реалма для создания нового реалма.
Задайте имя реалма, например, salt.box, как на рисунке Рис. 3, и нажмите кнопку Создать.
Новый реалм будет создан.
![]() |
|---|
![]() |
|---|
Создание клиента
-
Выберите пункт меню Клиенты главного меню KeyCloak Рис. 4. Клиентом Keycloak является веб-приложение
saltbox_core, входящее в состав Salt.Box. Зарегистрируйте это приложение в KeyCloak, для чего откройте диалог создания клиента, нажав кнопкуСоздание клиентаРис. 4 [1].
Рисунок 4. Страница клиентов
-
На вкладке Общие настройки диалога создания клиента Рис. 5 введите параметры:
Поле Значение Комментарий Тип клиента OpenID Connectобязательное поле ID клиента saltbox_coreобязательное поле Имя клиента client_saltbox_coreлюбое наименование затем нажмите
Далее.
Рисунок 5. Окно создания клиента: вкладка общих настроек
-
На вкладке Настройка возможностей диалога создания клиента Рис. 6 установите флажки:
Поле Значение Стандартный поток ✓ Прямой доступ ✓ затем нажмите
Далее.
Рисунок 6. Окно создания клиента: вкладка настроек функциональных возможностей
-
Оставьте без изменений параметры на вкладке Настройки входа Рис. 7, нажмите
Сохранить.
Будет создан новый клиент KeyCloak.
Рисунок 7. Окно создания клиента: вкладка настроек параметров входа
Создание роли клиента
Salt.Box предоставляет полномочия на управление коллекциями пользователям с ролью collections_admin.
Создайте эту роль для клиента saltbox_core реалма salt.box.
Выполните действия, указанные ниже.
-
На странице Клиенты откройте созданный клиент saltbox_core и перейдите на вкладку Роли.
НажмитеСоздание ролиРис. 8.
Рисунок 8.
-
Введите параметры роли в диалоговом окне создания роли Рис. 9:
Поле Значение Комментарий Наименование роли collections_adminобязательное поле Описание произвольная строка затем нажмите
Сохранить.
Рисунок 9. Диалоговое окно создания роли
Созданную роль далее можно будет назначить любому пользователю Salt.Box: см. Назначение роли пользователю.
Также Вы можете узнать у разработчика программного продукта наименования и назначение других встроенных ролей Salt.Box и правила нотации для доступа к ресурсам Salt.Box.
Создание пользователя
-
Введите данные и создайте нового пользователя:
-
Выберите пункт меню Пользователи главного меню KeyCloak Рис. 10.
НажмитеДобавить пользователянад таблицей пользователей Рис. 10 [1].
Рисунок 10. Страница управления учётными записями пользователей
-
В открывшемся окне введите данные пользователя Рис. 11:
Поле Значение Комментарий Имя пользователя userобязательное поле E-mail Имя Фамилия
Рисунок 11. Ввод данных пользователя
-
В случае необходимости укажите требуемые дополнительные действия с учётной записью пользователя, например, обязательную смену пароля при первом входе пользователя (Update Password) Рис. 12.
В окне создания пользователя появится плиткаUpdate PasswordРис. 11 [1].
Рисунок 12. Добавление требуемых действий пользователя
-
Нажмите
СоздатьРис. 11.
Будет создан новый пользователь, отобразится окно Настройки пользователя Рис. 13.
-
-
Задайте пароль для созданного пользователя.
Назначение роли пользователю
Теперь назначьте ранее созданную роль collections_admin (см. Создание роли клиента) учетной записи user, чтобы предоставить ей разрешения на управление коллекциями.
-
На странице Пользователи откройте созданный аккаунт
userи перейдите на вкладку Сопоставление ролей.
НажмитеНазначить рольРис. 15.
Рисунок 15. Вкладка сопоставления ролей
-
Введите название роли
collections_adminв строку поиска и нажмите кнопку Рис. 16 [1].
Рисунок 16. Назначение роли пользователю
-
Поставьте флажок на записи с ролью
collections_admin, ассоциированной с клиентомsaltbox_coreРис. 16 [2]. -
Нажмите
НазначитьРис. 16 [3].
Рольcollections_adminбудет назначена пользователюuser.
Пользователюuserбудут доступны объекты корневой коллекции.
Дополнительная информация
Более подробную информацию о настройке KeyCloak можно найти здесь:
Документация KeyCloak




