/
Пример настройки для Keycloak

Пример настройки для Keycloak

Вы можете использовать любой 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 > Основные настройки:

     

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

Поле

Описание

Поле

Описание

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

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

Claims source

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

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

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

  • access_token

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

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

Настройки в Keycloak

 

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

 

Настройки в Keycloak

 

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

 

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

Настройки в Keycloak

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

 

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

Настройки в Keycloak

 

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

 

Настройки в Keycloak

 

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

 

Примеры настройки с использованием различных значений в поле 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

 

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

 

Настройки в Keycloak

 

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

 

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

Настройки в Keycloak

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

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

Настройки в Keycloak

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

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

ID=$(sudo docker ps | grep visiology_admin | awk '{print $1}') sudo docker exec -it $ID sh node administrator-tools/change-auth-type/index.js

По умолчанию скрипт работает на выключение.


Смотрите также

Related content

Пример настройки для Keycloak
Пример настройки для Keycloak
More like this
Пример настройки для Keycloak
Пример настройки для Keycloak
More like this
Пример настройки для Keycloak
Пример настройки для Keycloak
More like this
Пример настройки для Keycloak
Пример настройки для Keycloak
More like this
Пример настройки для Keycloak
Пример настройки для Keycloak
More like this
Пример настройки для Keycloak
Пример настройки для Keycloak
More like this