Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Вы можете использовать любой identity-провайдер. В нашем примере мы продемонстрируем, как настроить Keycloak для аутентификации.

Для настройки работы с Keycloak необходимо выполнить следующие шаги:

  1. Запустите Keycloak на сервере с помощью следующей команды:
    sudo docker run --name keycloak -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=password -p 8080:8080 jboss/keycloak
    где
    KEYCLOAK_USER – логин, который используется для входа в консоль администратора в Keycloak.
    KEYCLOAK_PASSWORD – пароль для входа в консоль администратора в Keycloak.
    8080 – стандартный порт Keycloak для работы по HTTP. При работе с HTTPS используется порт 8443.

  2. Откройте в браузере консоль администратора Keycloak по адресу: {домен_Keycloak}/auth/admin

  3. На платформе Visiology в панели администрирования перейдите на вкладку Основные > Авторизация > OpenID Connect > Основные настройки:

    Image RemovedImage Added

    На вкладке Основные настройки заполните следующие поля (звездочкой помечены обязательные поля):

Поле

Описание

UserName claim*

Можно указать любое наименование из токена, например, preferred_username.

Repsonse type*

Проверка аутентификации, . Доступные значения: id_token (проверка аутентификации через Implicit Flow) или code (проверка аутентификации через Authorization Code Flow). Значение code может также использоваться при любом значении поля Claims source.

Authentication scheme*

Схема аутентификации.

Authority*

http(https)://{домен Keycloak}/auth/realms/{наименование_Realm}

Client id*

Наименование клиента из Keycloak.

Client secret

Скопируйте секрет в настройках клиента в Keycloak на вкладке Credentials и вставьте в это поле.

Callback path*

Необязательный ограниченный путь для обработки обратного вызова аутентификации.

Scope*

Список запрашиваемых разрешений.

Resourse

Идентификатор ресурса, к которому будет запрошен доступ.

Claim sourse

Выберите userinfo endpoint

Claims source

Доступные значения:

  • userinfo endpoint (выберите это значение при подключении через Keylcoak

, или
  • )

  • id_token (выберите это значение при подключении через ADFS

.
  • )

  • access_token

Примеры настройки с использованием различных типов ответа (поле Response type)

Проверка аутентификации через Implicit Flow (id_token)

Настройки в Keycloak

Настройки на платформе Visiology

Проверка аутентификации через Implicit Flow при использовании userinfo endpoint в качестве Claims source

Настройки в Keycloak

Image Added

Настройки на платформе Visiology

Image Added

Проверка аутентификации через Authorization Сode (code)

...

Настройки в Keycloak

Image Added

Настройки на платформе Visiology

Image Added

Выборка
hiddentrue

(информация) При необходимости маппировать атрибуты или роли, необходимо ввести значение id_token token в поле Response type и настроить мапперы в клиенте Keycloak для ролей и атрибутов.

Настройка мапперов для ролей:

Настройка мапперов для атрибутов:

Примеры настройки с использованием различных значений в поле Claims source

При выборе значения в поле Claims source, необходимо включить соответствующую опцию в Keycloak в настройках Mappers клиента:

  • При использовании userinfo endpoint необходимо активировать опцию Add to userinfo.

  • При использовании id_token необходимо активировать опцию Add to ID token.

  • При использовании access_token необходимо активировать опцию Add to access token.

Настройки при использовании значения id_token

Настройки в Keycloak

Image Added

Настройки на платформе Visiology

Image Added

Настройки при использовании значения userinfo endpoint

Настройки в Keycloak

Image Added

Настройки на платформе Visiology

Image Added

Настройки при использовании значения access_token

Настройки в Keycloak

Image Added

Настройки на платформе Visiology

Image Added

Если вы настроили что-то неверно, то можно выключить, а затем включить внешнюю авторизацию с помощью скрипта.
Для этого на сервере нужно выполнить следующие команды:

...