Автоматическая аутентификация через платформу публикации
Автоматическая аутентификация позволяет пользователям не вводить учетные данные в вашем приложении. При таком типе аутентификации сервер Авторизации Иксолла использует учетные данные, которые пользователь указал на платформе публикации приложения.
Примечание
В настоящий момент автоматическая аутентификация поддерживается для платформ Steam, Xbox Live и Epic Games. Если вам нужна поддержка платформы Stone или Mail.ru, обратитесь к аккаунт-менеджеру проекта.
Чтобы реализовать автоматическую аутентификацию через платформу публикации:
- Настройте приложение в личном кабинете разработчика платформы.
- Подключите автоматическую аутентификацию в Личном кабинете.
- Выполните шаги интеграции на стороне вашего приложения.
Подключение автоматической аутентификации
В продукте Авторизация реализованы два подхода к подключению автоматической аутентификации:
- путем настройки классического варианта авторизации (см. инструкцию ниже);
- путем создания теневого варианта авторизации (см. раздел Как настроить теневой вариант авторизации).
Примечание
Теневой вариант авторизации необходим для создания кросс-платформенных аккаунтов, которые дают пользователям возможность играть на разных платформах под одним аккаунтом, синхронизировать свой инвентарь на разных платформах и т. д. Теневой вариант авторизации создается для каждой платформы публикации, на которой размещена игра, а затем привязывается к единому аккаунту пользователя. Подробнее см. в разделе Кросс-платформенный аккаунт.В классическом варианте авторизации можно подключить автоматическую аутентификацию сразу для нескольких платформ публикации, но создать кросс-платформенный аккаунт невозможно. Если пользователь войдет в игру сначала на одной платформе, а затем на другой, для продукта Авторизация это будут два разных пользователя.
Чтобы подключить автоматическую аутентификацию в классическом варианте авторизации:
- Откройте ваш проект в Личном кабинете и перейдите в раздел Авторизация.
- Нажмите Настроить в панели классического варианта авторизации.
- На странице навигации перейдите к блоку Аутентификация и выберите раздел Платформы публикации.
- Чтобы подключить платформу публикации, на которой размещена игра, нажмите значок ⚙ справа от имени платформы и выберите пункт Настройки.
- В модальном окне укажите параметры настройки для выбранной платформы:
- 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 с ключами доступа, принадлежащими Иксолле. Для этого нажмите значок ⚙ справа от имени платформы и выберите пункт Подключить.
- Нажмите Подключить.
- Если требуется, повторите шаги 4 – 6 для других платформ публикации.
Интеграция на стороне приложения
- Интегрируйте в ваше приложение SDK платформы публикации.
- Реализуйте логику получения сессионного ключа (session ticket):
- Для Steam получите билет сессии аутентификации.
- Для Xbox Live сформируйте session ticket на основе данных платформы после аутентификации пользователя. Параметр формируется по шаблону
\
, где:-\ ;\ \
— Xbox User ID;\
— user hash;\
— Xbox Secure Token Service.
- Для Epic Games получите от платформы код авторизации (
exchange code ), который генерируется после аутентификации пользователя и используется в качестве session ticket.
- Реализуйте логику аутентификации пользователя с помощью методов SDK:
SilentAuth
— обменивает session ticket от платформы публикации на JSON Web Token (JWT) и аутентифицирует пользователя.OAuthLogout
— завершает активную сессию пользователя.
Примечание
В демопроекте реализована автоматическая аутентификация через Steam. Вы можете использовать класс
SteamAuth.cs
в качестве примера. Если вы используете демопроект в качестве начальной версии системы аутентификации, вы можете настроить автоматическую аутентификацию через Steam, следуя инструкции Как подключить нативную авторизацию через Steam.Была ли статья полезна?
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.Полезные ссылки
Последнее обновление: 10 октября 2023Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.