Настроить интерактивную авторизацию в Saby

Настроить интерактивную авторизацию в Saby

Вы можете встроить приложение на внешний сайт с помощью визуального элемента, например кнопки. Нажав ее, пользователь авторизуется в Saby.

Для интерактивной авторизации используется протокол OAuth 2. Он позволяет пользователям внешней системы войти на сайт online.saby.ru, а затем передает права на выполнение запросов.

Когда пользователь разрешает приложению доступ к информации, внешней системе передается токен доступа. Это набор символов (ключ), который определяет, какое именно приложение авторизуется в Saby и какие участки системы ему доступны.

Параметры приложения для интеграции:

  • client_id= <client_id>,
  • client_secret= <client_secret>.

Выполнить запрос

«Token» — обязательное поле для авторизации, используемое внешним приложением для выполнения запросов в системе Saby. Авторизационные данные передаются в заголовке:

X-SBISAccessToken: <access_token> — токен доступа приложения для работы с API Saby.

Получить токен доступа

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

Авторизация через браузер
Авторизация через браузер
Серверная авторизация
Серверная авторизация
  1. На внешнем сайте поместите визуальный элемент, например кнопку. Она будет нужна для взаимодействия с Saby.
  2. Создайте обработчик, который при нажатии кнопки во всплывающем окне будет открывать адрес для идентификации приложения.
    Адрес для идентификации: https://online.sbis.ru/oauth/api/token?

    Параметры запроса:

    * — обязательный параметр.

    • "client_id"*: идентификатор приложения;
    • "redirect_uri"*: адрес, на который будет перенаправлен пользователь после успешной аутентификации в Saby;
    • "response_type": тип ответа. Возможные значения «code» и «token», по умолчанию «token»;
    • "state": строка состояния, которую Saby вернет без изменений;
    • "scope": область действия запроса на доступ в виде списка строк, разделенных пробелами. Например, «openid profile email».

    Скрипт ниже выполняет переход в новое окно с адресом для идентификации:

  3. Введите логин и пароль.
  4. Разрешите доступ к аккаунту.
  5. Перейдите на внешний сайт в зависимости от параметра запроса «response_type»:
  1. На внешнем сайте поместите визуальный элемент, например кнопку. Она будет нужна для взаимодействия с Saby.
  2. Создайте обработчик, который при нажатии кнопки во всплывающем окне будет открывать адрес для идентификации приложения.
    Адрес для идентификации:
    https://online.sbis.ru/oauth/api/token?client_id=<client_id>&client_secret=<secret_key> &redirect_uri=https://other-site.ru/
    Скрипт ниже выполняет переход в новое окно с адресом для идентификации:

  3. Для идентификации Saby запросит логин и пароль, которые пользователь должен ввести в окне авторизации.
  4. На следующем шаге приложение запросит согласие на доступ к данным пользователя.
  5. Если пользователь разрешил приложению доступ к аккаунту, приложение отправит токен доступа и идентификатор устройства пользователя на внешний сайт. Их можно использовать для доступа к API системы Saby. Токен позволяет переключаться между разными аккаунтами одного профиля через метод СБИС.ПереключитьАккаунт.

    Пример передачи токена и ИД устройства: https://other-site.ru/#access_token=<access_token>

Авторизация Saby на вашем сайте настроена. Теперь пользователь может входить в систему через внешний сайт и работать с сервисами Saby.

Нашли неточность? Выделите текст с ошибкой и нажмите ctrl + enter.