SDK для iOS / Аутентификация через custom ID
 На главную

SDK для iOS

  • Библиотека Login

  • Библиотека Store

  • Библиотека Inventory

  • Библиотека Payments

  • Библиотека Subscriptions

  • Аутентификация

  • Акции

  • Личный кабинет и атрибуты пользователя

  • Аутентификация через custom ID

    Вы можете аутентифицировать пользователей на стороне Иксоллы с помощью custom ID (ID пользователя, сформированный на вашем сервере).

    Такой способ аутентификации позволяет:

    Чтобы аутентифицировать пользователя с помощью custom ID, вам потребуется в серверной части вашего приложения реализовать вызов API-метода Auth by custom ID. Метод возвращает JSON Web Token (JWT) пользователя, который можно использовать как авторизационный токен в методах SDK для проведения платежа и управления инвентарем.

    Примечание
    При первой аутентификации пользователя с указанным ID новая учетная запись на стороне Иксоллы создается автоматически.

    Чтобы завершить активную сессию пользователя, используйте метод SDK logUserOut.

    Инструкции

    Узнайте о дополнительных настройках из наших инструкций.

    Как использовать собственную систему авторизации

    Вы можете интегрировать SDK с собственной системой авторизации. В этом случае необходимо реализовать идентификацию пользователя по custom ID (ID пользователя, сформированный на вашем сервере) для открытия внутриигрового магазина, проведения платежа и управления инвентарем.

    Сценарий взаимодействия c серверами Иксоллы при использовании собственной системы авторизации:

    1. Ваш клиент отправляет на ваш сервер запрос на аутентификацию.
    2. Ваш сервер аутентифицирует пользователя и отправляет на сервер Иксоллы запрос на получение JSON Web Token (JWT) пользователя, передавая custom ID.
    3. Сервер Иксоллы возвращает JWT пользователя.
    4. Ваш сервер передает JWT пользователя клиенту.
    5. Полученный JWT пользователя используется методами SDK вместо авторизационного токена для открытия внутриигрового магазина, проведения платежа и управления инвентарем.

    Чтобы использовать собственную систему авторизации совместно с продуктами Иксоллы:

    1. В Личном кабинете настройте серверный OAuth 2.0-клиент.
    2. Реализуйте получение серверного JWT.
    3. Реализуйте получение JWT пользователя.
    4. Реализуйте логику работы с внутриигровым магазином, покупками и инвентарем с использованием JWT пользователя.

    Примечание
    Если вы используете систему авторизации PlayFab или Firebase, реализуйте получение JWT пользователя с помощью готовых расширений Иксоллы для BaaS.

    Настройка серверного OAuth 2.0-клиента

    1. Откройте ваш проект в Личном кабинете и перейдите в раздел Авторизация.
    2. Нажмите Настроить в панели нужного варианта авторизации.
    3. На странице навигации перейдите к блоку Безопасность и выберите раздел OAuth 2.0 аутентификация.
    4. Нажмите Добавить OAuth 2.0.
    5. Укажите URI переадресации OAuth 2.0.
    6. Установите флажок Серверная (соединение server-to-server).
    7. Нажмите Подключить.
    8. Скопируйте и сохраните ID клиента и секретный ключ.

    Получение серверного JWT

    В серверной части вашего приложения реализуйте метод для получения серверного JWT с использованием запроса Generate JWT. Запрос должен содержать следующие параметры:

    Примечание
    Срок жизни серверного JWT — 59 минут.

    Получение JWT пользователя

    В серверной части вашего приложения реализуйте метод для получения JWT пользователя с использованием запроса Auth by custom ID. Запрос должен содержать заголовок X-Server-Authorization: <server_JWT>, где <server_JWT> — серверный JWT, полученный на предыдущем шаге.

    Примечание
    Срок жизни JWT пользователя — 24 часа. Чтобы изменить это значение, обратитесь к аккаунт-менеджеру проекта или напишите на integration@xsolla.com.

    Использование JWT пользователя

    Передайте JWT пользователя в методы SDK в качестве авторизационного токена.

    Реализуйте получение нового JWT после истечения его срока жизни. Рекомендуется получать новый токен в фоновом режиме, без повторного входа пользователя в приложение.

    Была ли статья полезна?
    Спасибо!
    Что может сделать страницу еще лучше? Сообщение
    Жаль, что так произошло
    Расскажите, почему статья не была полезна. Сообщение
    Спасибо за обратную связь!
    Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
    Скрыть

    Полезные ссылки

    Последнее обновление: 31 октября 2022

    Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.

    Сообщите о проблеме
    Мы постоянно улучшаем качество нашей документации. Ваш отзыв поможет нам в этом.
    Укажите email-адрес, чтобы мы могли связаться с вами
    Спасибо за обратную связь!