Configuration de l’authentification par lien profond

Les liens profonds permettent à l’utilisateur de s’authentifier dans le Web Shop via le jeu en un seul clic, contournant ainsi le processus d’authentification par ID utilisateur ou via Xsolla Login.

Si le jeu est déjà installé sur l’appareil mobile de l’utilisateur, il sera automatiquement redirigé vers le jeu via un lien profond pour obtenir un jeton d’autorisation.

Flux utilisateur

  1. Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de saisir l'ID utilisateur ou de se connecter via le jeu mobile s'affiche.
  1. L'utilisateur clique sur le bouton de connexion via le jeu.
  2. L'utilisateur est redirigé vers le jeu où, il est automatiquement redirigé vers le Web Shop en tant qu'utilisateur autorisé.

  1. Un utilisateur non autorisé du Web Shop clique sur le bouton de connexion ou sur le bouton d'achat. Une fenêtre modale permettant de saisir l'ID utilisateur ou de se connecter à la version mobile du jeu à l'aide d'un code QR s'affiche.

  1. L'utilisateur scanne le code QR à l'aide de son appareil mobile, après quoi le Web Shop s'ouvre sur celui-ci.
  2. La version mobile du jeu s'ouvre sur l'appareil de l'utilisateur.
  3. L'utilisateur est automatiquement redirigé vers le Web Shop sur son appareil mobile en tant qu'utilisateur autorisé.
  1. Dans les paramètres de l'application mobile de votre jeu, enregistrez un schéma d'URL pour ouvrir le jeu via un lien profond :
    • dans les applications Android — dans le fichier AndroidManifest.xml ;
    • dans les applications iOS — dans le fichier Info.plist.
Après l’enregistrement du système, lorsque l’utilisateur s’authentifie dans le Web Shop via le jeu, le jeu doit s’ouvrir à l’adresse spécifiée. Exemple de schéma d’URL pour l’enregistrement d’un jeu : gamename://authorize, où :
  • gamename — nom de votre jeu qui doit s’ouvrir sur un appareil mobile pour l’authentification de l’utilisateur ;
  • authorize — exemple de nom d’action à effectuer après l’ouverture du jeu gamename. Utilisez le nom d’action qui correspond aux actions du système d’exploitation de votre application.
Exemple d’enregistrement d’un schéma d’URL dans les applications 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>
    

    Exemple d’enregistrement d’un schéma d’URL dans les applications 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. Implémentez la génération d'un jeton d'autorisation au format JWT en utilisant l'ID utilisateur dans le jeu.

      ParamètreTypeDescription
      stringID de la méthode d’autorisation du Compte éditeur. Obligatoire.
      stringURL pour recevoir le webhook Validation utilisateur dans le Web Shop. L’URL doit correspondre à l’adresse spécifiée lors de la configuration de l’authentification par ID utilisateur. Xsolla attend un code HTTP 200 en réponse au webhook pour autoriser l’utilisateur du Web Shop. En cas de réception d’une réponse avec un code HTTP 404 ou d’absence de réponse, l’utilisateur ne sera pas autorisé.

      Pour désactiver les webhooks lors de l’authentification par lien profond, spécifiez la valeur "webhookUrl": "https://nowebhook.com". Dans ce cas, Xsolla ne vérifie pas l’existence de l’utilisateur, assurez-vous donc que dans le paramètre user.id vous passez l’ID d’un utilisateur qui existe dans le jeu.
      Obligatoire.
      stringL’ID du projet se trouve dans le Compte éditeur, à côté du nom de votre projet ou dans la barre d’adresse du navigateur. L’URL présente le format suivant : https:​//publisher.xsolla.com/merchant ID/Publisher Account section. Obligatoire.
      stringID utilisateur dans le jeu. Obligatoire.
      stringNom d’utilisateur. Obligatoire.

      Exemple d’appel à la méthode API de génération de jeton utilisateur à l’aide 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"
       }
      }'
      

      Vous obtiendrez une réponse du type {token=“JWT_TOKEN”}.

      1. Ajoutez une fenêtre contextuelle avec une notification d'autorisation réussie (facultatif).
      2. Implémentez l'ouverture du Web Shop dans le navigateur à l'aide du jeton utilisateur obtenu.

      Exemple de création d’une URL pour ouvrir le Web Shop dans le navigateur d’un utilisateur autorisé :

      • https:​//example.com/?token={token}, si vous utilisez un domaine personnalisé
      • https:​//example.xsollasitebuilder.com/?token={token}, si vous utilisez un domaine Xsolla
      {token} est le jeton d’autorisation de l’utilisateur.Vous pouvez effectuer vous-même les réglages du côté du Site Builder en utilisant les exemples de code fournis ci-dessous.
      Pour obtenir de l’aide pour la configuration, contactez votre responsable de la réussite client ou envoyez un e-mail à csm@xsolla.com.
      Note
      Commencez par configurer l’authentification par ID utilisateur. Cela est nécessaire afin que l’utilisateur dispose d’une méthode alternative d’authentification si l’authentification par lien profond n’est pas disponible. Par exemple, si le jeu n’est pas installé sur l’appareil mobile de l’utilisateur.
      1. Ouvrez le projet dans le Compte éditeur.
      2. Dans le menu latéral, cliquez sur Site Builder.
      3. Cliquez sur Configure sur la carte du site de votre Web Shop avec authentification par ID utilisateur.
      4. Accédez à Login Settings et sélectionnez la section User ID.
      5. Réglez la bascule Deeplink authorization sur On.
      1. Dans le champ Deeplink URL, entrez le lien pour l’authentification utilisateur.
      1. Si vous utilisez le bloc Fast Login sur votre site :
        1. Accédez au bloc Fast Login ;
        2. Dans la section Layout, réglez la bascule QR code sur On.
      1. Pour vérifier l’authentification, cliquez sur Preview.
      2. Pour publier le site Web, cliquez sur Publish.
      Cet article vous a été utile ?
      Merci !
      Que pouvons-nous améliorer ? Message
      Nous sommes désolés de l'apprendre
      Dites-nous pourquoi vous n'avez pas trouvé cet article utile. Message
      Merci pour votre commentaire !
      Nous examinerons votre message et l'utiliserons pour améliorer votre expérience.
      Dernière mise à jour: 22 Août 2024

      Faute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entée.

      Signaler un problème
      Nous améliorons continuellement notre contenu grâce à vos commentaires.
      Indiquez votre adresse e-mail pour un suivi
      Merci pour votre commentaire !