Skip to main content

Ссылочная авторизация

Ссылочная авторизация помогает в организации бесшовного перехода из мобильных приложений TБанка в ваше приложение с сохранением авторизации — например, Долями или разделов Выгода и Шоппинг.

Принцип работы

  1. Клиент нажимает Купить в приложении сервиса Т-Банка.

  2. Сервис Т-Банка генерирует авторизационный токен и отправляет запрос. Вид запроса:

    https://partner?auth_token=xxxx
  3. Сервис партнера генерирует параметр state и связывает его с браузером пользователя для защиты от CSRF-атак.

  4. Сервис партнера инициирует авторизацию через вызов метода GET https://id.tbank.ru/auth/authorize со следующими параметрами:

    • client_id — идентификатор, который вы получили после регистрации.
    • redirect_urihttps://myintegration.ru/auth/complete.
    • auth_token — токен, полученный на предыдущем шаге.
    • state — параметр, который сгенерировал сервис партнера.
    • response_type — code.
  5. На https://myintegration.ru/auth/complete приходит запрос. Вид запроса:

    https://myintegration.ru/auth/complete?state=ABCxyz&code=c.1a2b3c4d5e&session_state=hXXXXXXY3kgs3nx0H3RTj3JzCSrdaqaDhU6lS8XXXXX.i4kl6dsEB1SQogzq0Nj0

    Значения параметров:

    • state — параметр, который сгенерировал сервис партнера на шаге отправки запроса /authorize;
    • code — параметр, нужный для получения Access Token на следующем шаге;
    • session_state — технический параметр T‑ID.
  6. Сервис партнера валидирует параметр state из предыдущего шага. Если валидация прошла успешно, сохраняет значение параметра code для дальнейшего обмена на access_token.

  7. Сервис партнера получает access_token через метод POST https://secured-openapi.tbank.ru/sso/auth/token. Запрос должен выполняться с бэкенда с использованием двухфакторной аутентификации — mTLS.

    Как выпустить mTLS-сертификат

    • Authorization — basic, где username и password соответствуют client_id и client_secret, которые вы получили на электронную почту после подписания договора. Примеры составления на разных языках.
    • Content-typeapplication/x-www-form-urlencoded.
    • grant_typeauthorization_code.
    • redirect_urihttps://myintegration.ru/auth/complete.
    • code — код из пункта 6.
    • cert — выпущенный сертификат.
    • key — приватный ключ.
  8. Приложение партнера получает ответ.

    • access_token — токен для обращения к T-API для получения информации о пользователе;
    • token_type — тип авторизации по access_token;
    • expires_in — время жизни access_token;
    • id_token — технический параметр T‑ID.

Персональные данные

  1. Сервис партнера обращается к TAPI для получения персональных данных клиента через метод /userinfo.

  2. Персональные данные клиента передаются для заполнения учетной записи и завершения авторизации.

  3. Сервис партнера перенаправляет пользователя согласно бизнес-логике. Если вы обнаружили схожесть новых учетных данных с существующими, вы можете объединить учетные записи.

openapi@tbank.ru

АО «ТБанк» использует файлы «cookie» с целью персонализации сервисов и повышения удобства пользования веб-сайтом. «Cookie» представляют собой небольшие файлы, содержащие информацию о предыдущих посещениях веб-сайта. Если вы не хотите использовать файлы «cookie», измените настройки браузера.