ym88659208ym87991671
Поддержка бесшовной авторизации | Документация для разработчиков

Поддержка бесшовной авторизации

Обновлено 30 мая 2024

Что такое бесшовных вход можно прочитать тут Описания сценариев бесшовного входа. Здесь вы найдете информацию о необходимых изменениях в вашем Android-приложении для поддержки бесшовного входа.

Ваше приложение может использовать бесшовную авторизацию через Сбер ID. Это позволяет пользователям переходить между приложением СберБанк Онлайн и вашим приложением без необходимости вручную запускать процесс авторизации. При открытии в ваше приложение через диплинк, в нем будет присутствовать дополнительный параметр sberIDRedirect. Он содержит информацию о схеме и хосте uriScheme, необходимую для запуска процесса авторизации через Сбер ID.

Чтобы получить значение uriScheme, используйте метод SID.Login.getSeamlessUriScheme(uri). Передайте в него исходный URI, полученный при переходе в ваше приложение в сценарии бесшовной авторизации (URI находится в intent.data). Полученную схему uriScheme нужно передать в поле uriScheme метода SID.Login.createUriForLogin(), а затем запустить метод SID.Login.loginWithID(this, uri).

Для работы необходимо инициализировать SDK до вызова методов авторизации

// Получаем uriScheme
val data = intent.data
val uriScheme = SID.Login.getSeamlessUriScheme(data)

// Полученное значение необходимо передать в следующий метод `SID.Login.createUriForLogin` при создании диплинка авторизации.
val uri = SID.Login.createUriForLogin(
clientId = "clientId вашего сервиса",
scope = "добавьте все необходимые вам scope",
state = "random_state",
nonce = "random_nonce",
redirectUri = "partner://redirect",
codeChallenge = codeChallenge,
codeChallengeMethod = PkceUtils.getCodeChallengeMethod()
uriScheme = uriScheme
)

// Запуск авторизации с полученной uriScheme
SID.Login.autoAuth(this, uri)
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.