Авторизация

Авторизация Иксолла (Xsolla Login) позволяет партнерам упростить процесс аутентификации пользователей. Продукт использует методы API и предоставляет следующие возможности:

  • обработка персональных данных в соответствии с требованиями GDPR;
  • настройка продукта из Личного кабинета;
  • выбор способа хранения базы данных пользователей: на вашей стороне или на стороне Иксоллы;
  • аутентификация пользователей по имени/паролю, через социальные сети;
  • сортировка социальных сетей в зависимости от геолокации пользователя и частоты использования.

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

  • кастомизацию интерфейса виджета;
  • локализацию интерфейса виджета (20 языков);
  • автоматическую доставку обновлений виджета пользователю;
  • настройку стартовой страницы виджета.

Note: Интеграция виджета авторизации является рекомендуемым шагом при настройке лаунчера. Если вы уже используете другие продукты Иксоллы и хотите интегрировать решение для авторизации, пожалуйста, обратитесь к аккаунт-менеджеру проекта.

Сценарий интеграции

Возможны два варианта интеграции продукта Авторизация:

  • через методы API, если вы используете собственный интерфейс для аутентификации пользователей в игре;
  • через виджет авторизации, включающий интерфейс для аутентификации пользователей и методы API.

Интеграция через методы API

  1. Создайте вариант авторизации в Личном кабинете, указав:
    • название;
    • ссылку на сайт игры, где будет использоваться авторизация.
  2. Перейдите в раздел Настройки авторизации и заполните следующие поля:
    • Callback URL — URL, на который будет перенаправлен пользователь после успешной аутентификации в игре;
    • Allowed origins (CORS) — URL, с которого будут выполняться вызовы методов API;
    • Error callback URL — URL, на который будет перенаправлен пользователь в случае ошибки аутентификации. Если значение параметра не передано, используется Callback URL.
  3. Выберите хранилище для базы данных пользователей (хранилище Иксоллы, ваше хранилище).
  4. Настройте социальные сети, через которые будет доступна аутентификация пользователей.

Интеграция через виджет

  1. Создайте вариант авторизации в Личном кабинете, указав:
    • название;
    • ссылку на сайт игры, где будет использоваться авторизация.
  2. Перейдите в раздел Настройки авторизации и заполните следующие поля:
    • Callback URL — URL, на который будет перенаправлен пользователь после успешной аутентификации в игре;
    • Error callback URL — URL, на который будет перенаправлен пользователь в случае ошибки аутентификации. Если значение параметра не передано, используется Callback URL.
  3. Выберите хранилище для базы данных пользователей (хранилище Иксоллы, ваше хранилище).
  4. Настройте социальные сети, через которые будет доступна аутентификация пользователей.
  5. Кастомизируйте интерфейс виджета авторизации.
  6. Подключите виджет авторизации к сайту.

Кастомизация виджета

  1. Скачайте архив со стилями из Личного кабинета и распакуйте его.
  2. Скачайте и установите Node.js последней версии (LTS).
  3. Запустите команду npm i в директории с распакованным архивом стилей.
  4. Отредактируйте файл app/styles/themes/_default.scss.
  5. Запустите команду npm run styles в директории с распакованным архивом стилей.
  6. Загрузите сгенерированный файл вида app.default.css из папки dist в Личный кабинет.

Для повторной кастомизации интерфейса виджета авторизации выполните шаги 4-6.

Подключение виджета

Для интеграции виджета авторизации на сайт игры используется Xsolla Login Javascript SDK.

Шаг 1

Подключите Xsolla Login Javascript SDK одним из следующих способов:

  • если в проекте используется Bower, запустите консоль и передайте команду bower install xsolla-login-js-sdk;
  • если пакет не подключен, добавьте в тег <head> HTML-страницы, на которой будет размещен виджет авторизации, код <script src=“https://cdn.xsolla.net/xsolla-login-widget/sdk/1.3.2/xl.min.js”></script>.

Шаг 2

В тег <body> добавьте код для инициализации виджета авторизации.

<script type="text/javascript">
XL.init({
  projectId: '{Login projectId}',
  loginUrl: '{loginUrl}',
  locale: 'en_US',
  onlyWidgets: true,
  fields: 'email'
});
</script>

Параметр Тип Описание
[i18n] api_param_login_project_id string [i18n] api_param_login_project_id_desc Обязательный.
loginUrl string [i18n] api_param_login_auth_login_url_desc
[i18n] api_param_login_locale string [i18n] api_param_login_locale_desc
onlyWidgets boolean Используется ли виджет авторизации. ‘true’ по умолчанию.
[i18n] api_param_login_fields string [i18n] api_param_login_fields_desc
theme string URL с файлом стилей виджета. Если значение параметра не задано, используются стили, загруженные в Личный кабинет.

Шаг 3

В тег <body> добавьте блок, в котором будет размещен виджет авторизации. Продублируйте ID блока в параметре element_id.

<div id="xl_auth"></div>
<script type="text/javascript">
var element_id = 'xl_auth';
var options = {
  width: 400,
  height: 550,
  route: XL.ROUTES.REGISTRATION
};
XL.AuthWidget(element_id, options);
</script>

Параметр Тип Описание
element_id string Идентификатор блока, в котором размещен виджет авторизации. Обязательный.
options object Настройки блока виджета авторизации. Объект состоит из параметров, перечисленных ниже.
width number Ширина блока в пикселях. По умолчанию 400.
height number Высота блока в пикселях. По умолчанию 550.
route string Стартовая страница виджета. Может принимать следующие значения:
  • XL.ROUTES.LOGIN — страница входа через логин/пароль, используется по умолчанию;
  • XL.ROUTES.REGISTRATION — страница регистрации;
  • XL.ROUTES.RECOVER_PASSWORD — страница сброса пароля;
  • XL.ROUTES.ALL_SOCIALS — страница со списком социальных сетей, доступных для аутентификации пользователей.

Обработка персональных данных

Обработка персональных данных пользователей Европейского союза (ЕС) регламентируется положениями GDPR. Авторизация Иксолла соответствует основным требованиям GDPR, перечисленным ниже.

В соответствии со статьями 6-8 регламента требуется:

  • запрашивать согласие пользователя на обработку его персональных данных;
  • предоставлять пользователю возможность изменить решение и запретить обработку персональных данных.

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

Если пользователь изменил решение и отказался от обработки персональных данных, вы можете отменить обработку, отправив запрос на support@xsolla.com.

Права пользователя

В соответствии со статьями 15-17, 19 регламента пользователь имеет следующие права:

  • получение копии собственных персональных данных;
  • запрос на изменение персональных данных, если они некорректны;
  • запрос на удаление персональных данных.

Если данные пользователей хранятся на стороне Иксоллы, отправьте запрос на support@xsolla.com, чтобы получить, изменить или удалить их.

Если данные пользователей хранятся на вашей стороне, вы можете управлять ими самостоятельно.

Обработка и хранение данных

В соответствии со статьей 5 регламента требуется хранить и обрабатывать персональные данные следующим образом:

  • собирать только данные, которые требуется обработать для достижения цели;
  • обеспечивать безопасность данных, чтобы избежать их повреждения, уничтожения или незаконного копирования.

Авторизация Иксолла использует данные пользователя, которые могут повлиять на отправку писем, блокировку пользователя, проведение платежа и другие способы применения пользовательских данных.

Хранение и передача персональных данных пользователей производится в зашифрованном виде, в соответствии с алгоритмом AES-256.

Выгрузка данных

В соответствии со статьей 20 регламента пользователь имеет право на перенос и хранение своих персональных данных. Для этого требуется предоставить пользователю его данные в электронном формате.

Если данные пользователей хранятся на стороне Иксоллы, отправьте запрос на support@xsolla.com, чтобы выгрузить их в формате CSV.

Если данные пользователей хранятся на вашей стороне, вы можете управлять ими самостоятельно.

Защита данных

В соответствии со статьей 32 регламента требуется обеспечить надежный уровень безопасности данных, используя:

  • шифрование данных;
  • конфиденциальность данных;
  • целостность данных;
  • устойчивые системы обработки данных.

Авторизация Иксолла использует следующие инструменты для обеспечения безопасности данных:

  • шифрование данных в соответствии с алгоритмом AES-256;
  • проверка на корректность введенного пароля;
  • проверка пароля от аккаунта на надежность;
  • ограничение доступа к данным.

Рецепты

Изучите наши рецепты, чтобы попробовать расширенные возможности продукта Авторизация: