Привязка аккаунтов к учетной записи пользователя
Привязка дополнительного аккаунта для входа в приложение
Если в вашем приложении настроено несколько способов аутентификации пользователей, вы можете реализовать возможность привязки дополнительного аккаунта социальной сети и/или имени пользователя, email-адреса и пароля. Это позволит пользователям:
- Использовать для входа в приложение альтернативный способ, а не тот, который использовался при регистрации. Например, если пользователь первый раз зашел в приложение с помощью ID устройства, он может дополнительно указать имя пользователя, email-адрес и пароль и использовать эти данные аутентификации на текущем или любом другом устройстве.
- Использовать для входа в приложение другие учетные данные, а не те, которые использовались при регистрации. Например, если пользователь указал при первом входе в приложение учетную запись Google, он может дополнительно привязать к аккаунту учетную запись Discord и использовать для входа учетную запись как Google, так и Discord.
Чтобы реализовать привязку дополнительного аккаунта:
- В интерфейсе вашего приложения добавьте формы для ввода данных дополнительного аккаунта.
- Реализуйте логику привязки с помощью следующих методов библиотеки Login:
Название метода SDK | Описание |
---|---|
addUsernameAndPassword | Добавляет к текущему аккаунту имя пользователя, email-адрес и пароль, которые можно использовать для аутентификации. |
getURLToLinkSocialNetworkToAccount | Привязывает к текущему аккаунту социальную сеть, которую можно использовать для аутентификации. |
deleteLinkedNetwork | Удаляет привязку аккаунта социальной сети к текущему аккаунту. |
- Пользователь, зарегистрированный с помощью имени пользователя или email-адреса, входит в приложение через аккаунт социальной сети.
- Социальная сеть предоставляет доступ к email-адресу пользователя.
- Email-адрес из социальной сети совпадает с email-адресом, указанным пользователем при регистрации в вашем приложении.
Привязка аккаунта платформы
Если вы распространяете свою игру несколькими способами, в т. ч. на платформах Steam, Xbox Live, Epic Games и т. д., вы можете реализовать логику привязки аккаунтов платформ к единому аккаунту пользователя. Это позволит пользователям:
- играть на разных платформах под одним аккаунтом;
- использовать кросс-инвентарь для синхронизации инвентаря на разных платформах.
Сценарий привязки аккаунтов
Если у пользователя уже есть единый аккаунт, при аутентификации с помощью аккаунта платформы он может привязать его к единому аккаунту. Это происходит следующим образом:- Пользователь впервые входит в игру на консольной платформе.
- Интерфейс игры предлагает привязать аккаунт платформы к единому аккаунту игры пользователя.
- Пользователь переходит в приложение и авторизуется в едином аккаунте.
- Приложение отправляет запрос кода привязки на сервер Xsolla Login.
- Приложение отображает игроку код привязки.
- Пользователь возвращается к консольной платформе и вводит полученный код.
- Сервер игры отправляет запрос привязки платформенного аккаунта на сервер Xsolla Login.
- На экране консольной платформы выводится сообщение об успешности привязки аккаунтов.
Сценарий реализации
- Для сборки приложения с единым аккаунтом, к которому будут привязываться аккаунты платформы:
- В Личном кабинете настройте стандартный вариант авторизации.
- Реализуйте один из способов аутентификации пользователя:
- по имени пользователя/email-адресу и паролю;
- через ID устройства;
- без пароля;
- через социальные сети;
- через custom ID.
- Добавьте в интерфейс приложения элементы для запроса и отображения кода привязки.
- Реализуйте логику запроса кода привязки с помощью метода библиотеки Login
createCodeForLinkingAccounts
и его отображения пользователю.
- Для сборки приложения для консольной платформы:
- В Личном кабинете настройте теневой вариант авторизации.
- Реализуйте один из способов аутентификации пользователя:
- через custom ID;
- автоматическая аутентификация через платформу публикации.
- Реализуйте один из способов аутентификации пользователя:
- Добавьте в интерфейс приложения элементы для ввода кода привязки аккаунта.
- На сервере приложения реализуйте логику привязки аккаунта c помощью API метода Link accounts by code.
Полезные ссылки
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.