Авторизация по протоколу OpenIDConnect, OAuth 2.0

Для настройки авторизации по протоколу OpenIDConnect, OAuth 2.0 предварительно должен быть запущен внешний Провайдер. Поддерживается интеграция с Identity Server, Keycloak, ADFS.

Для включения режима авторизации по протоколу OpenIDConnect, OAuth 2.0:

  1. В разделе «Внешняя авторизация» перейдите в «Настройки внешнего провайдера»

  2. Откроется раздел «Внешняя авторизация» с выбранным по умолчанию типом авторизации «Использовать внутреннюю авторизацию» (по ролевой модели, настроенной в Платформе Visiology)

  3. В выпадающем списке выберите тип авторизации «OpenIDConnect»
  4. Заполните параметры внешней авторизации:

    1. UserName claim - ключ (наименование) клейма в токене пользователя для поиска пользователя в платформе. Можно установить любое наименование из токена, например preferred_username.

    2. Repsonse type - проверка аутентификации, можно установить проверку по id_token или code (пример использования различных «Response type» приведен в ниже)

    3. Authentication scheme - схема аутентификации

    4. Authority - путь до сервиса авторизации (например, для Kloack: {протокол}://{домен Провайдера>}/auth/realms/{наименование_Realm})

    5. Client id - идентификатор клиента из Провайдера

    6. Client secret - скопировать из настроек клиента у Провайдера (например, в keycloak - вкладка credentials)

    7. Callback path - путь для обработки обратного вызова аутентификации (заполните, если отличается от "/signin-oidc")

    8. Scopeсписок разрешений на доступ ( например, «openid profile role»)

  5. Сохраните настройки нажатием на “Сохранить

Теперь при входе в Платформу пользователь будет перенаправляться на форму авторизации подключенного внешнего Провайдера.

Автоматическое создание новых пользователей при авторизации через внешнего Провайдера не производится. Все пользователи должны быть заранее созданы в Платформе Visiology.

Пример настройки различных Response type

Пример настройки различных Response type для Keycloak:

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

  • Проверка аутентификации через Authorization Code Flow (code)