Автоматическая аутентификация через платформу публикации
Автоматическая аутентификация позволяет пользователям не вводить учетные данные в вашем приложении. При таком типе аутентификации сервер Xsolla Login использует учетные данные, которые пользователь указал на платформе публикации приложения.
Примечание
В настоящий момент автоматическая аутентификация поддерживается для платформ Steam, Xbox Live и Epic Games. Если вам нужна поддержка платформы Stone или Mail.ru, обратитесь к персональному менеджеру проекта или напишите на csm@xsolla.com.
Чтобы реализовать автоматическую аутентификацию через платформу публикации:
- Настройте приложение в личном кабинете разработчика платформы.
- Подключите автоматическую аутентификацию в Личном кабинете.
- Выполните шаги интеграции на стороне вашего приложения.
Подключение автоматической аутентификации
В продукте Login реализованы два подхода к подключению автоматической аутентификации:
- путем настройки классического варианта авторизации (см. инструкцию ниже);
- путем создания теневого варианта авторизации (см. раздел Как настроить теневой вариант авторизации).
Примечание
Теневой вариант авторизации необходим для создания кросс-платформенных аккаунтов, которые дают пользователям возможность играть на разных платформах под одним аккаунтом, синхронизировать свой инвентарь на разных платформах и т. д. Теневой вариант авторизации создается для каждой платформы публикации, на которой размещена игра, а затем привязывается к единому аккаунту пользователя. Подробнее см. в разделе Кросс-платформенный аккаунт.В классическом варианте авторизации можно подключить автоматическую аутентификацию сразу для нескольких платформ публикации, но создать кросс-платформенный аккаунт невозможно. Если пользователь войдет в игру сначала на одной платформе, а затем на другой, для продукта Login это будут два разных пользователя.
- Откройте проект в Личном кабинете и перейдите в раздел Login.
- Нажмите Настроить в панели классического варианта авторизации.
- Перейдите к блоку Аутентификация и выберите раздел Платформы публикации.
- Чтобы подключить платформу публикации, на которой размещена игра, нажмите значок ⚙ справа от имени платформы и выберите пункт Настройки.
- В модальном окне укажите параметры настройки для выбранной платформы:
- Steam:
- ID приложения — AppID вашего аккаунта на платформе;
- Секретный ключ приложения — ключ веб-API.
- Epic Games:
- ID приложения — Client ID клиента вашей игры на платформе;
- Секретный ключ приложения — Secret key клиента вашей игры на платформе.
- Xbox Live:
- ID приложения — Application ID/Client ID вашей игры на платформе;
- Секретный ключ приложения — Application Secret, сгенерированный при регистрации вашей игры на платформе.
- Steam:
Примечание
Для платформы Xbox Live необязательно указывать значения параметров настройки. Вы можете подключить Xbox Live с ключами доступа, принадлежащими Xsolla. Для этого нажмите значок ⚙ справа от имени платформы и выберите пункт Подключить.
- Нажмите Подключить.
- Если требуется, повторите шаги 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:
AuthenticateWithSessionTicket
— обменивает session ticket от платформы публикации на JSON Web Token (JWT) и аутентифицирует пользователя.LogoutUser
— завершает активную сессию пользователя.
Справочная документация SDK
Узнайте больше о методах SDK и их параметрах.
Примечание
В демопроекте реализована автоматическая аутентификация через Steam, вы можете использовать блупринты демопроекта в качестве примера. Если вы используете демопроект в качестве начальной версии системы аутентификации, вы можете настроить автоматическую аутентификацию через Steam, следуя инструкции Как подключить нативную аутентификацию через Steam.
Была ли статья полезна?
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.Полезные ссылки
Последнее обновление: 22 января 2024Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.