KeyCloak

KeyCloak — это сервер аутентификации и авторизации с открытым исходным кодом, который обеспечивает безопасность и управление доступом для веб-приложений и сервисов

Интеграция

Для интеграции вам необходимо:

  • Установить и настроить сервер KeyCloak

Примечание

Руководство по установке KeyCloak: https://www.keycloak.org/guides#server

  • Создать клиентское приложение в KeyCloak, чтобы получить конфигурационные данные для аутентификации и авторизации

  • Настроить приложение для использования конфигурационных данных KeyCloak

Пример интеграции

Создание Realm

  1. Войти в административную панель KeyCloak

  2. Выбрать Realm в левом меню

  3. Нажать на кнопку Create Realm

  1. Ввести название для нового Realm

  2. Нажать на кнопку Create

Создание Clients

  1. Войти в административную панель KeyCloak

  2. Выбрать Realm в левом меню

  3. Нажать на вкладку Clients

  1. Нажать на кнопку Create

  2. Заполнить форму создания клиента:

    5.1. Указать имя клиента

    5.2. Выбрать тип клиента (например, confidential или public)

    5.3. Указать URL перенаправления и другие параметры

  3. Во вкладке General Settings заполнить поля:

    • Client type

    • Client ID

    • Name

  1. Во вкладке Capability config поставить галочку в чек-боксе Authorization

  1. Во вкладке Login settings в полях Valid redirect URls и Valid post logout redirect URls указать путь /*

  1. Добавить необходимую роль клиенту

  1. Нажать на кнопку Save

  2. На следующей странице можно настроить дополнительные параметры клиента, такие как разрешения и области доступа

  3. Нажать на кнопку Save для завершения создания клиента

Создание Users

  1. Войти в административную панель KeyCloak

  2. Выбрать Realm в левом меню

  3. Нажать на вкладку Users

  1. Нажать на кнопку Add User

  1. Заполнить форму создания пользователя:

    4.1 Указать имя

    4.2 Фамилию

    4.3 Email

    4.4 Пароль

  1. Нажать на кнопку Save

  2. На следующей странице можно настроить дополнительные параметры пользователя, такие как роли и группы

  3. Нажать на кнопку Save для завершения создания пользователя

Настройка Identity Provider

  1. Войти в административную панель KeyCloak

  2. Выбрать Realm в левом меню

  3. Нажать на вкладку Identity Providers

  4. Нажать на кнопку Add provider и выбрать нужный тип провайдера (например, LDAP)

  1. Задать настройки провайдера, такие как адрес сервера, порт, протокол, пользовательские атрибуты и т.д

Важно

Информацию для поля Client Secret можно взять из параметров Client во вкладке Credentials

  1. Сохранить настройки провайдера

Создание KeyCloak на сервере RuDesktop

  1. Войти в административную панель RuDesktop

  2. Открыть блок Администрирование

  3. Нажать на пункт KeyCloak

  4. Нажать на кнопку Добавить KeyCloak

  5. Заполнить поля:

    5.1. Активировать галочку в чек-боксе Включить

    5.2. Указать адрес сервера KeyCloak в поле Адрес сервера

    5.3. Если используется TLS шифрование, то активировать галочку в чек-боксе Использовать TLS шифрование

    5.4. Указать название Realm в поле Название Realm

    5.5. Указать ID клиента в поле ID клиента с правами на чтение

    5.6. Указать Client Secret в поле Ключ доступа к клиенту

    5.7. Выбрать из списка группу по умолчанию для новых пользователей в поле Группа по умолчанию для новых пользователей

  1. Нажать на кнопку Сохранить и продолжить

  2. Нажать на кнопку Синхронизировать

Авторизация через KeyCloak

  1. Перейти на страницу авторизации

  2. Выбрать Realm в поле выбора домена

  1. Ввести Логин и Пароль

  2. Нажать на кнопку Войти