Настроить интерактивную авторизацию в Saby
  1. Saby
  2. База знаний
  3. API
  4. API для авторизации
  5. Настроить интерактивную авторизацию

Настроить интерактивную авторизацию в 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.
Используя наш сайт, вы даете согласие на обработку персональных данных