Автоматическая аутентификация через платформу публикации
Автоматическая аутентификация позволяет пользователям не вводить учетные данные в вашем приложении. При таком типе аутентификации сервер Xsolla Login использует учетные данные, которые пользователь указал на платформе публикации приложения.
- Настройте приложение в личном кабинете разработчика платформы.
- Подключите автоматическую аутентификацию в Личном кабинете.
- Выполните шаги интеграции на стороне вашего приложения.
Подключение автоматической аутентификации
В продукте Login реализованы два подхода к подключению автоматической аутентификации:
- путем настройки классического варианта авторизации (см. инструкцию ниже);
- путем создания теневого варианта авторизации (см. раздел Как настроить теневой вариант авторизации).
В классическом варианте авторизации можно подключить автоматическую аутентификацию сразу для нескольких платформ публикации, но создать кросс-платформенный аккаунт невозможно. Если пользователь войдет в игру сначала на одной платформе, а затем на другой, для продукта Login это будут два разных пользователя.
- Откройте проект в Личном кабинете и перейдите в раздел Login.
- Нажмите Настроить в панели классического варианта авторизации.
- Перейдите к блоку Аутентификация и выберите раздел Платформы публикации.
- Чтобы подключить платформу публикации, на которой размещена игра, нажмите значок ⚙ справа от имени платформы и выберите пункт Настройки.
- В модальном окне укажите параметры настройки для выбранной платформы:
- Steam:
- ID приложения — AppID вашего аккаунта на платформе;
- Секретный ключ приложения — ключ веб-API.
- Epic Games:
- ID приложения — Client ID клиента вашей игры на платформе;
- Секретный ключ приложения — Secret key клиента вашей игры на платформе.
- Xbox Live:
- ID приложения — Application ID/Client ID вашей игры на платформе;
- Секретный ключ приложения — Application Secret, сгенерированный при регистрации вашей игры на платформе.
- Steam:
- Нажмите Подключить.
- Если требуется, повторите шаги 4 – 6 для других платформ публикации.
Интеграция на стороне приложения
- Интегрируйте в ваше приложение SDK платформы публикации.
- Реализуйте логику получения сессионного ключа (session ticket):
- Для Steam получите билет сессии аутентификации.
- Для Xbox Live сформируйте session ticket на основе данных платформы после аутентификации пользователя. Параметр формируется по шаблону
<xid>-<uhs>;<XSTSToken>
, где:<xid>
— Xbox User ID;<uhs>
— user hash;<XSTSToken>
— Xbox Secure Token Service.
- Для Epic Games получите от платформы код авторизации (
exchange code ), который генерируется после аутентификации пользователя и используется в качестве session ticket.
- Реализуйте логику аутентификации пользователя с помощью методов SDK:
SilentAuth
— обменивает session ticket от платформы публикации на JSON Web Token (JWT) и аутентифицирует пользователя.OAuthLogout
— завершает активную сессию пользователя.
SteamAuth.cs
в качестве примера. Если вы используете демопроект в качестве начальной версии системы аутентификации, вы можете настроить автоматическую аутентификацию через Steam, следуя инструкции Как подключить нативную авторизацию через Steam.Полезные ссылки
Последнее обновление: 22 января 2024Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.