Establecer la autenticación mediante vínculo profundo

Los vínculos profundos permiten que el usuario se autentique en la Web Shop a través del juego con un solo clic, en lugar de pasar por el proceso de autenticación mediante ID de usuario o mediante Xsolla Login.

Si el juego está instalado en el dispositivo móvil del usuario, a este se le redirigirá al juego mediante un vínculo profundo para obtener un token de autorización.

Flujo del usuario

  1. Un usuario no autorizado de la Web Shop pulsa en el botón de inicio de sesión o en el botón de compra. Se abre una ventana modal para introducir el ID de usuario o iniciar sesión mediante el juego móvil.
  1. El usuario pulsa en el botón de inicio de sesión a través del juego.
  2. Al usuario se le redirige al juego desde donde se le redirige automáticamente a Web Shop como un usuario autorizado.

  1. Un usuario no autorizado de la Web Shop pulsa en el botón de inicio de sesión o en el botón de compra. Se abre una ventana modal para introducir el ID de usuario o al iniciar sesión en la versión móvil del juego utilizando un código QR.

  1. El usuario escanea el código QR con su dispositivo móvil, tras lo cual se abre la Web Shop en su dispositivo móvil.
  2. La versión móvil del juego se abre en el dispositivo móvil del usuario
  3. Al usuario se le redirige automáticamente a la Web Shop como usuario autorizado.
  1. En la configuración de la aplicación móvil de su juego, registre un esquema de URL para abrir el juego a través de un vínculo profundo:
    • en aplicaciones de Android, en el archivo AndroidManifest.xml
    • en aplicaciones de iOS, en el archivo Info.plist
Tras registrar el esquema, cuando el usuario se autentique en Web Shop mediante el juego, este deberá abrirse en la dirección especificada. Ejemplo de esquema URL para registrar un juego: gamename://authorize, en el que:
  • gamename: el nombre de su juego que debe abrirse en un dispositivo móvil para la autenticación del usuario.
  • authorize: un ejemplo de un nombre de acción que debe ejecutarse después de que se abra el juego gamename. Use el nombre de acción que coincida con las acciones del sistema operativo de su aplicación.
Ejemplo de registro de un esquema URL en aplicaciones de iOS:
Copy
Full screen
Small screen
    <key>CFBundleURLTypes</key>
      <array>
        <dict>
          <key>CFBundleTypeRole</key>
          <string>Editor</string>
          <key>CFBundleURLSchemes</key>
          <array>
            <string>gamename</string>
          </array>
        </dict>
      </array>
    

    Ejemplo de registro de un esquema URL en aplicaciones de Android:

    Copy
    Full screen
    Small screen
      <intent-filter>
          <action android:name="android.intent.action.VIEW" />
          <category android:name="android.intent.category.DEFAULT" />
          <category android:name="android.intent.category.BROWSABLE" />
          <data android:scheme="gamename" android:host="authorize" />
      </intent-filter>
      

      1. Implemente la generación de un token de autorización en formato JWT empleando el ID de usuario del juego.

      ParámetroTipoDescripción
      stringID del método de autorización de Cuenta del editor. Obligatorio.
      stringURL para recibir el webhook User validation in Web Shop (Validación de usuarios en Web Shop). La URL debe coincidir con la dirección especificada cuando se establezca la autenticación mediante ID de usuario. Xsolla espera un código HTTP 200 como respuesta al webhook para autorizar al usuario de la Web Shop. Si Xsolla recibe una respuesta con un código HTTP 404 o no recibe respuesta, el usuario no será autorizado.

      Puede especificar el valor "webhookUrl": "https://nowebhook.com" para deshabilitar los webhooks cuando se autentique mediante un vínculo profundo. En este caso, Xsolla no comprueba la existencia del usuario, así que asegúrese de que en el parámetro user.id se transmite el ID de usuario que existe en el juego.
      Obligatorio.
      stringID del proyecto que se encuentra en Cuenta del editor, el cual se especifica junto al nombre de su proyecto en la barra de direcciones del navegador. La URL tiene el siguiente formato: https:​//publisher.xsolla.com/merchant ID/Publisher Account section. Obligatorio.
      stringID del usuario en el juego. Obligatorio.
      stringNombre de usuario. Obligatorio.

      Ejemplo de llamada al método API de generación de token de usuario a través de cURL:

      Copy
      Full screen
      Small screen
      curl --location 'https://sb-user-id-service.xsolla.com/api/v1/user-id' \
      --header 'Content-Type: application/json' \
      --data '{
       "loginId": "000001aa-001a-0ab0-00001-01a01a01a01a",
       "webhookUrl": "https://nowebhook.com",
       "settings": {
         "projectId": 123456,
         "merchantId": 123456
       },
       "user": {
         "id": "123",
         "name": "a-user-name"
       }
      }'
      

      Obtendrá una respuesta del tipo {token=“JWT_TOKEN”}.

      1. Agregue una ventana emergente con una notificación de autorización correcta (opcional).
      2. Implemente la apertura de Web Shop en el navegador mediante el token de usuario obtenido.

      Ejemplo de creación de una URL para abrir Web Shop en el navegador para un usuario autorizado:

      • https:​//example.com/?token={token}, si utiliza un dominio personalizado
      • https:​//example.xsollasitebuilder.com/?token={token}, si utiliza un dominio de Xsolla
      En el que {token} es el token de autorización del usuario.Puede realizar los ajustes en el lado de Site Builder utilizando los códigos de ejemplo sumistrados abajo.
      Para obtener ayuda para la instalación, contacte con su Gestor de éxito del cliente o envíe un correo electrónico a csm@xsolla.com.
      Nota
      Primero establezca la autenticación mediante ID de usuario Esto es necesario para que los usuarios tengan un modo alternativo de autenticación si la autenticación mediante vínculo profundo no está disponible. Por ejemplo, si el juego no está instalado en el dispositivo móvil de un usuario.
      1. Abra el proyecto en la Cuenta del editor.
      2. En el menú lateral, haga clic en Site Builder (Creador de sitios web).
      3. Haga clic en Configure en la ficha del sitio de su Web Shop con autenticación mediante ID de usuario.
      4. Vaya a Login Settings y seleccione la sección User ID.
      5. Establezca el conmutador Deeplink authorization en la posición On.
      1. En el campo Deeplink URL, introduzca el enlace para la autenticación del usuario.
      1. Si está utilizando el bloque Fast Login en el sitio web:
        1. Vaya al bloque Fast Login.
        2. En la sección Layout, ponga el conmutador QR code en la posición On.
      1. Para verificar la autenticación, haga clic en Preview.
      2. Para publicar el sitio web, haga clic en Publish.
      ¿Te ha resultado útil este artículo?
      ¡Gracias!
      ¿Hay algo en lo que podamos mejorar? Mensaje
      Lo sentimos
      Por favor, cuéntanos por qué no te ha resultado útil este artículo. Mensaje
      ¡Gracias por tu mensaje!
      Nos ayudará a mejorar tu experiencia.
      Última actualización: 22 de Agosto de 2024

      ¿Has encontrado una errata u otro error de texto? Selecciona el texto y pulsa Ctrl+Intro.

      Informar de un problema
      Nos esforzamos por ofrecer contenido de calidad. Tus comentarios nos ayudan a mejorar.
      Déjanos tu correo electrónico para que te podamos responder
      ¡Gracias por tu mensaje!