Ссылочная авторизация
Ссылочная авторизация помогает в организации бесшовного перехода из мобильных приложений T‑Банка в ваше приложение с сохранением авторизации — например, Долями или разделов Выгода и Шоппинг.
Принцип работы
Клиент нажимает Купить в приложении сервиса Т-Банка.
Сервис Т-Банка генерирует авторизационный токен и отправляет запрос. Вид запроса:
https://partner?auth_token=xxxx
Сервис партнера генерирует параметр
state
и связывает его с браузером пользователя для защиты от CSRF-атак.Сервис партнера инициирует авторизацию через вызов метода GET https://id.tbank.ru/auth/authorize со следующими параметрами:
client_id
— идентификатор, который вы получили после регистрации.redirect_uri
— https://myintegration.ru/auth/complete.auth_token
— токен, полученный на предыдущем шаге.state
— параметр, который сгенерировал сервис партнера.response_type
— code.
На
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.
Сервис партнера валидирует параметр
state
из предыдущего шага. Если валидация прошла успешно, сохраняет значение параметраcode
для дальнейшего обмена наaccess_token
.Сервис партнера получает
access_token
через метод POST https://secured-openapi.tbank.ru/sso/auth/token. Запрос должен выполняться с бэкенда с использованием двухфакторной аутентификации — mTLS.- Authorization — basic, где username и password соответствуют
client_id
иclient_secret
, которые вы получили на электронную почту после подписания договора. Примеры составления на разных языках. - Content-type —
application/x-www-form-urlencoded
. - grant_type —
authorization_code
. - redirect_uri — https://myintegration.ru/auth/complete.
- code — код из пункта 6.
- cert — выпущенный сертификат.
- key — приватный ключ.
- Authorization — basic, где username и password соответствуют
Приложение партнера получает ответ.
- access_token — токен для обращения к T-API для получения информации о пользователе;
- token_type — тип авторизации по
access_token
; - expires_in — время жизни
access_token
; - id_token — технический параметр T‑ID.
Персональные данные
Сервис партнера обращается к T‑API для получения персональных данных клиента через метод
/userinfo
.Персональные данные клиента передаются для заполнения учетной записи и завершения авторизации.
Сервис партнера перенаправляет пользователя согласно бизнес-логике. Если вы обнаружили схожесть новых учетных данных с существующими, вы можете объединить учетные записи.