Authentification par custom ID
Vous pouvez authentifier les utilisateurs côté Xsolla par custom ID (un identifiant utilisateur généré sur votre serveur).
Cette option d’authentification permet de :
- utiliser votre propre système d’autorisation avec les produits Xsolla ;
- implémenter la logique d’un compte utilisateur multiplateforme.
Pour authentifier un utilisateur par custom ID, vous devez implémenter l’appel API Auth by custom ID côté serveur dans votre application. L’appel renvoie le JSON Web Token (JWT) de l’utilisateur, qui est utilisé comme jeton d’autorisation dans les méthodes SDK pour effectuer un paiement et gérer l’inventaire.
oauthLogout
.Instructions
- Store
- Payments
- Inventory
Vous pouvez intégrer le SDK à votre propre système d’autorisation. Pour ce faire, implémentez l’identification utilisateur par custom ID (un identifiant utilisateur généré sur votre serveur) pour ouvrir le magasin en jeu, effectuer un paiement et gérer l’inventaire.
Flux d’interaction avec les serveurs Xsolla lorsque vous utilisez votre propre système d’autorisation :
- Votre client envoie une requête d’authentification à votre serveur.
- Votre serveur autorise l’utilisateur et envoie une requête au serveur Xsolla pour obtenir le JSON Web Token (JWT) de l’utilisateur, en passant son custom ID.
- Le serveur Xsolla renvoie le JWT de l’utilisateur.
- Votre serveur passe le JWT de l’utilisateur au client.
- Les méthodes SDK utilisent le JWT de l’utilisateur obtenu au lieu d’un jeton d’autorisation pour ouvrir le magasin en jeu, effectuer un paiement et gérer l’inventaire.
Pour utiliser votre propre système d’autorisation avec les produits Xsolla :
- Configurez le client OAuth 2.0 du serveur dans votre Compte éditeur.
- Implémentez l’obtention du JWT du serveur.
- Implémentez l’obtention du JWT de l’utilisateur.
- Implémentez la logique de fonctionnement du magasin en jeu, des achats et de l’inventaire au moyen du JWT de l’utilisateur.
Configurer le client OAuth 2.0 du serveur
- Ouvrez votre projet dans le Compte éditeur et accédez à la section Login.
- Dans le volet du projet de connexion, cliquez sur Configure.
- Accédez au bloc Security et sélectionnez la section OAuth 2.0.
- Cliquez sur Add OAuth 2.0.
- Spécifiez les OAuth 2.0 redirect URIs.
- Cochez la case Server (server-to-server connection).
- Cliquez sur Connect.
- Copiez et enregistrez l'ID client et la clé secrète.
Obtenir un JWT de serveur
Côté serveur de votre application, implémentez une méthode pour obtenir le JWT du serveur en utilisant l’appel API Generate JWT. La requête doit contenir les paramètres suivants :
grant_type
— type de JWT, passez la valeurclient_credentials
;client_secret
— clé secrète obtenue lorsque vous configurez le client OAuth 2.0 du serveur ;client_id
— ID client obtenu lorsque vous configurez le client OAuth 2.0 du serveur.
Obtenir un JWT d'utilisateur
Côté serveur de votre application, implémentez une méthode pour obtenir le JWT de l’utilisateur en utilisant l’appel API Auth by custom ID. La requête doit contenir l’en-tête X-Server-Authorization: <server_JWT>
, où <server_JWT>
est le JWT du serveur obtenu à l’étape précédente.
Utiliser un JWT d'utilisateur
Passez le JWT de l’utilisateur à la méthode XStore.init
et utilisez les méthodes SDK pour ouvrir le magasin en jeu, effectuer un paiement et gérer l’inventaire.
Implémentez la logique d’obtention d’un nouveau JWT utilisateur après son expiration. Nous vous recommandons d’effectuer cette opération en arrière-plan, afin que l’utilisateur n’ait pas à se reconnecter à l’application.
Liens utiles
Dernière mise à jour: 31 Juillet 2024Faute de frappe ou autre erreur dans le texte ? Sélectionnez le texte concerné et appuyez sur Ctrl+Entée.