Подключение хранилища для данных пользователей
В зависимости от способа хранения данных пользователей вам доступна разная функциональность продукта (см. раздел Сравнение хранилищ для данных пользователей).
Хранилище Xsolla
Если вы хотите, чтобы продукт Login выполнял всю логику аутентификации, используйте хранилище Xsolla. С этим типом хранилища вам будут доступны более гибкие настройки.
При создании варианта авторизации хранилище Xsolla подключается по умолчанию, никаких дополнительных действий по его настройке не требуется. Если вы изменили тип хранилища по умолчанию, чтобы вновь подключить хранилище Xsolla, выполните следующие действия:
- Перейдите к блоку База пользователей и выберите раздел Хранилище.
- Выберите пункт Хранилище Xsolla и нажмите Сохранить изменения.
Хранилище PlayFab
Если вы хотите использовать функциональность PlayFab для работы с пользователями, подключите хранилище PlayFab. В хранилище записывается следующая информация:
- имя пользователя;
- email-адрес пользователя;
- пароль пользователя;
- поля с расширенной формы регистрации, если она настроена.
Хранилище PlayFab предоставляет вам доступ к следующим функциям:
- регистрация пользователей;
- аутентификация по email-адресу или имени пользователя и паролю;
- аутентификация через Twitch;
- сброс пароля пользователя;
- блокировка пользователя.
Чтобы подключить хранилище:
- Перейдите к блоку База пользователей и выберите раздел Хранилище.
- Выберите пункт PlayFab.
- В поле Title ID введите значение того же поля из личного кабинета PlayFab.
- Нажмите Сохранить изменения.
Хранилище Firebase
Если вы хотите использовать функциональность Firebase для работы с пользователями, подключите хранилище Firebase. В хранилище записывается следующая информация:
- имя пользователя;
- email-адрес пользователя;
- пароль пользователя;
- поля с расширенной формы регистрации, если она настроена.
- Перейдите к блоку База пользователей и выберите раздел Хранилище.
- Выберите пункт Firebase.
- В поле Ключ API введите значение того же поля из личного кабинета Firebase.
- Нажмите Сохранить изменения.
Собственное хранилище
Если вы используете собственную систему авторизации и храните пользовательские данные на стороне вашего приложения, подключите собственное хранилище.
Собственное хранилище предоставляет вам доступ к следующим функциям:
- регистрация пользователей;
- аутентификация пользователя с помощью email-адреса или имени пользователя и пароля;
- аутентификация без пароля по номеру телефона;
- аутентификация через социальные сети;
- сброс пароля пользователя.
Подключение собственного хранилища
- Перейдите к блоку База пользователей и выберите раздел Хранилище.
- Выберите пункт Собственное хранилище.
- Введите URL-адреса для отправки запросов API:
- Нажмите Сохранить изменения.
- Для заданных вами URL-адресов реализуйте API, который будет отвечать следующим образом:
- HTTP 200 / HTTP 204 для успешных запросов. Если требуется, JSON с дополнительными данными пользователя можно разместить в теле ответа. Переданные данные записываются в JWT (параметр
partner_data
). - Другие HTTP-коды для неуспешных запросов.
- HTTP 200 / HTTP 204 для успешных запросов. Если требуется, JSON с дополнительными данными пользователя можно разместить в теле ответа. Переданные данные записываются в JWT (параметр
- Чтобы передавать ID пользователя из вашей базы данных в JWT, обратитесь к персональному менеджеру проекта или напишите на csm@xsolla.com.
- Чтобы аутентификация без пароля по номеру телефона работала корректно, ответ вашего API должен содержать параметр
account_id
, который соответствует ID пользователя на стороне клиента.
Настройка обработки запросов от сервера Xsolla Login
Запросы от сервера Xsolla Login отправляются на URL, указанные в Личном кабинете, с заголовком Authorization: Bearer <JWT>
. JWT подписан секретным ключом проекта.
Чтобы обработать запрос:
- Провалидируйте полученный JWT.
- Если валидация прошла успешно, декодируйте JWT и убедитесь, что в его структуре есть поля из таблицы ниже. Для декодирования вы можете использовать библиотеку.
Поле | Тип | Описание |
---|---|---|
exp | Unix Timestamp | Дата и время истечения JWT. Срок жизни JWT — 7 минут. |
iat | Unix Timestamp | Дата и время выдачи JWT. |
iss | string | Сервис, подписавший JWT: https://login.xsolla.com . |
request_type | string | Константа: gateway_request . |
xsolla_login_project_id | string (UUID) | ID вашего варианта авторизации в Личном кабинете. |
social_access_token | string (UUID) | Токен доступа социальной сети, через которую аутентифицировался пользователь. Чтобы подключить передачу этого поля, обратитесь к персональному менеджеру проекта или напишите на csm@xsolla.com. |
- json
{
"exp": 1573635020,
"iat": 1573634600,
"iss": "https://login.xsolla.com",
"request_type": "gateway_request",
"xsolla_login_project_id": "00000000-0000-0000-0000-000000000000"
}
Продолжить чтение
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.