Центр помощи / Администратор / 4. Интеграции / Настройка SSO (OAuth 2.0) через Keycloak

Настройка SSO (OAuth 2.0) через Keycloak

В статье:
1. Настройка Keycloak
2. Настройка Single Sign-On (SSO)

Keycloak — это инструмент для идентификации пользователей. Он реализует технологию единого входа, которая позволяет переходить из одной системы в другую без повторной аутентификации. Подробнее о работе Keycloak вы можете узнать здесь.

1. Настройка Keycloak:

  1. Создание Realm:
    Realm – рабочая область, которая содержит совокупность всех данных, необходимых для аутентификации (компания, пользователи, пароли).
    В боковом меню выберите Create Realm > в Realm name введите название > Create
  2. Cоздание Clients:
    ▪️ Перейдите в раздел Clients > введите Client ID > Next
    ▪️ Включите Client authentication > Оставьте галочку только напротив Standart flow > Save
    ▪️ В Valid redirect URLs введите адрес https://auth.unspot.ru/api/oauth2/verify
    ▪️ В Login settings выберете keycloak в Login theme > Save
  3. Cоздание Users:
    ▪️ Перейдите в раздел Users > Create new user
    ▪️ Введите Username, Email, First name, Last name и нажмите Create > Save
    ▪️ Во вкладке Credentials задайте пароль для пользователя и уберите тумблер замены пароля пользователем при первой авторизации
Важно: Поле email должно быть заполнено, в дальнейшем это будет логином пользователя для входа.

2. Настройка Single Sign-On

Для подключения интеграции:
1. Перейдите на сайте UnSpot в раздел Настройка > Управление персоналом > Политики доступа
2. На странице найдите Дополнительные способы входа и нажмите Подключить к OAuth 2.0

Примечание: для заполнения нижеприведенных полей перейдите в Keycloak. В боковом меню в перейдите в "Realm settings" и во вкладке General откройте ссылку "OpenID Endpoint Configuration"
  • clientId – идентификатор клиента
    • Перейдите в Keycloak > Clients > выберете компанию > во вкладке General скопируйте Client ID
  • LoginUri – введите ссылку из OpenID Endpoint Configuration
    • Пример: https://<название вашего сервера>/realms/<название вашего realms>/protocol/openid-connect/auth
  • Тип JWKs – проверка подлинности токенов доступа
    • если вы хотите вставить ссылку > выберите Url,
    • если хотите вставить ключи вручную > выберите Keys
  • JWKs – в зависимости от выбранного типа JWK вставьте ссылку или скопированные ключи из ссылки OpenID Endpoint Configuration.
    • Пример: https://<название вашего сервера>/realms/<название вашего realms>/protocol/openid-connect/certs
  • Название – будет отображаться на кнопке подключение при входе в приложение
  • Иконка – будет отображаться на кнопке подключение при входе в приложение. Ограничение на размер изображения: 64px*64px.
  • Тип ответа – Code. Для интеграции с Keycloak выбрите этот тип ответа. C помощью кода Unspot получит информацию об имени, фамилии и почте для создания акаунта в системе.
  • Client secret – секретный код для интеграции
    • Перейдите в Keycloak > Clients > выберете компанию > во вкладке Credentials скопируйте Client secret
  • TokenURI – введите ссылку из OpenID Endpoint Configuration
    • Пример: https://<название вашего сервера>/realms/<название вашего realms>/protocol/openid-connect/token
  • Scope – введите в поле openid

Нажмите Сохранить > OAuth 2.0 успешно подключен.
Для отключения OAuth 2.0 нажмите на кнопку Отключить

Важно: Для автоматического входа сотрудников в систему UnSpot и импорта данных из Keycloak, необходимо добавить корпоративный домен компании в разделе Настройка > Управление персоналом > Политики доступа > OpenID Connect

Оставьте заявку, и мы свяжемся с вами в течение 30 минут.

Загрузка