KeyCloak¶
KeyCloak — это сервер аутентификации и авторизации с открытым исходным кодом, который обеспечивает безопасность и управление доступом для веб-приложений и сервисов
Интеграция¶
Для интеграции вам необходимо:
Установить и настроить сервер KeyCloak
Примечание
Руководство по установке KeyCloak: https://www.keycloak.org/guides#server
Создать клиентское приложение в KeyCloak, чтобы получить конфигурационные данные для аутентификации и авторизации
Настроить приложение для использования конфигурационных данных KeyCloak
Пример интеграции¶
Создание Realm¶
Войти в административную панель KeyCloak
Выбрать Realm в левом меню
Нажать на кнопку Create Realm
Ввести название для нового Realm
Нажать на кнопку Create
Создание Clients¶
Войти в административную панель KeyCloak
Выбрать Realm в левом меню
Нажать на вкладку Clients
Нажать на кнопку Create
Заполнить форму создания клиента:
5.1. Указать имя клиента
5.2. Выбрать тип клиента (например, confidential или public)
5.3. Указать URL перенаправления и другие параметры
Во вкладке General Settings заполнить поля:
Client type
Client ID
Name
Во вкладке Capability config поставить галочку в чек-боксе Authorization
Во вкладке Login settings в полях Valid redirect URls и Valid post logout redirect URls указать путь
/*
Добавить необходимую роль клиенту
Нажать на кнопку Save
На следующей странице можно настроить дополнительные параметры клиента, такие как разрешения и области доступа
Нажать на кнопку Save для завершения создания клиента
Создание Users¶
Войти в административную панель KeyCloak
Выбрать Realm в левом меню
Нажать на вкладку Users
Нажать на кнопку Add User
Заполнить форму создания пользователя:
4.1 Указать имя
4.2 Фамилию
4.3 Email
4.4 Пароль
Нажать на кнопку Save
На следующей странице можно настроить дополнительные параметры пользователя, такие как роли и группы
Нажать на кнопку Save для завершения создания пользователя
Настройка Identity Provider¶
Войти в административную панель KeyCloak
Выбрать Realm в левом меню
Нажать на вкладку Identity Providers
Нажать на кнопку Add provider и выбрать нужный тип провайдера (например, LDAP)
Задать настройки провайдера, такие как адрес сервера, порт, протокол, пользовательские атрибуты и т.д
Сохранить настройки провайдера
Создание KeyCloak на сервере RuDesktop¶
Войти в административную панель RuDesktop
Открыть блок Администрирование
Нажать на пункт KeyCloak
Нажать на кнопку Добавить KeyCloak
Заполнить поля:
5.1. Активировать галочку в чек-боксе Включить
5.2. Указать адрес сервера KeyCloak в поле Адрес сервера
5.3. Если используется TLS шифрование, то активировать галочку в чек-боксе Использовать TLS шифрование
5.4. Указать название Realm в поле Название Realm
5.5. Указать ID клиента в поле ID клиента с правами на чтение
5.6. Указать Client Secret в поле Ключ доступа к клиенту
5.7. Выбрать из списка группу по умолчанию для новых пользователей в поле Группа по умолчанию для новых пользователей
Нажать на кнопку Сохранить и продолжить
Нажать на кнопку Синхронизировать
Авторизация через KeyCloak¶
Перейти на страницу авторизации
Выбрать Realm в поле выбора домена
Ввести Логин и Пароль
Нажать на кнопку Войти