- User Store IDs et Microsoft Entra ID : lie l’authentification et les résultats au compte d’utilisateur connecté à l’application Microsoft Store.
- X-tokens d’authentification déléguée : lie l’authentification et les résultats au compte de services XBOX de l’utilisateur qui joue actuellement au jeu.
Authentification avec Microsoft Entra ID et les User Store IDs
Toutes les API de service Microsoft Store prennent en charge l’authentification via Microsoft Entra ID et les User Store IDs. Pour utiliser cette authentification, vous (ou votre organisation) devez disposer d’un locataire Microsoft Entra ID et y inscrire un ID d’application. Pour inscrire une application, votre compte doit disposer du rôle Administrateur général dans votre locataire. Si vous utilisez déjà Microsoft Office 365 ou d’autres services professionnels de Microsoft, vous disposez déjà d’un locataire Microsoft Entra ID que vous pouvez gérer dans votre portail Azure. Pour obtenir des conseils sur l’obtention des User Store IDs nécessaires pour ce type d’authentification, consultez Demande d’un User Store ID pour l’authentification de service à service.Sur PC, les droits sont associés à l’utilisateur connecté à l’application Microsoft Store, et non à l’utilisateur qui joue actuellement à un titre. Comme ces comptes peuvent être différents, il est conseillé aux titres PC de consulter les informations de Gestion des scénarios de comptes Store non concordants sur PC.
Authorization de votre requête, comme suit.
Limitation des consommables gérés par le développeur : bien que l’authentification par User Store ID et Entra ID fonctionne pour la plupart des appels d’API Microsoft Store dans les environnements de bac à sable, l’API Consume ne prend pas en charge cette méthode d’authentification pour les consommables gérés par le développeur dans les bacs à sable de développement. Pour consommer des consommables gérés par le développeur dans des bacs à sable, utilisez plutôt des jetons XSTS d’authentification déléguée.
Exemple :
- Microsoft.StoreServices (GitHub) : bibliothèque et code source permettant de s’authentifier et d’appeler les services Microsoft Store depuis votre back-end.
- Exemple Microsoft.StoreServices (GitHub) : exemple de service qui illustre des modèles d’authentification, d’intégration du commerce et de rapprochement des remboursements.
- Demande d’un User Store ID pour l’authentification de service à service
- Renouvellement d’une clé User Store ID
- Gérer les droits de produit à partir d’un service
Diagramme d’appel d’une API Microsoft Store
Le diagramme suivant décrit le processus d’appel d’une API Microsoft Store à l’aide du User Store ID depuis votre service.
Configuration supplémentaire requise pour afficher et gérer des produits avec un User Store ID et l’authentification Microsoft Entra ID
Pour utiliser Microsoft Entra ID et les User Store IDs, ajoutez l’ID client de votre application Microsoft Entra aux paramètres Product collections and purchases de votre jeu dans Partner Center. Vous pouvez configurer jusqu’à deux ID client pour accéder au produit et à ses extensions par le biais des services Collections et Purchase. Le symptôme le plus courant lorsque vos produits ne sont pas correctement liés à l’ID client de votre application Microsoft Entra est que les appels à Collections réussissent, mais qu’aucun élément ne figure dans les résultats.Configurer vos produits pour qu’ils soient visibles par votre service via Microsoft Entra ID et les User Store IDs
- Dans la page Partner Center de votre jeu, sélectionnez Product collections and purchases dans le volet de gauche.
- Saisissez l’ID client de l’application Microsoft Entra que vous utilisez pour authentifier votre service.
- Sélectionnez le bouton Save.
- Republiez le produit de jeu et toutes les extensions du produit sur le Microsoft Store dans votre bac à sable ou votre environnement de développement.
Authentification avec des X-tokens d’authentification déléguée
Utilisez un X-token d’authentification déléguée pour authentifier les appels de service à service en ajoutant l’en-têteAuthorization à la requête au format suivant.
- Game Service Sample : exemple complet de service web qui illustre la validation et la gestion des X-tokens provenant du client, l’authentification de serveur à serveur, les services de commerce, et bien plus encore. Téléchargez la dernière version depuis le site de téléchargement du GDK. Téléchargez la dernière version de All Samples. Game Service Samples se trouve sous samples\\Live\\GameService dans le fichier .zip téléchargé.
- Xfest 2019 - XSTS Auth and Server to Server made Easy : vue d’ensemble et explication des X-tokens et de la manière dont le Game Service Sample peut vous aider à démarrer votre propre implémentation de l’authentification de service à service. Pour télécharger les informations de la présentation, sélectionnez GDK Track Downloads sur le site d’archive.
- Authentification des services XBOX et appels de service à service : documentation plus détaillée sur l’authentification, les X-tokens, ainsi que les étapes et appels requis pour effectuer des appels de service à service vers les services XBOX.
Configuration supplémentaire requise pour afficher et gérer des produits avec des X-tokens d’authentification déléguée
Les X-tokens sont liés à un Business Partner ID dans Partner Center. Vous devez donc lier les produits à ce même Business Partner ID. En pratique, les produits doivent se trouver dans un Product Group dont le Dev Studio ID correspond au Business Partner ID utilisé par votre partie de confiance. Le symptôme le plus courant lorsque vos produits ne sont pas correctement liés au bon Business Partner ID est que les appels à Collections réussissent mais ne retournent aucun élément dans les résultats. Pour plus d’informations, consultez le billet de forum B2B call to Collections LicensePreview service returns empty results (Partner Center configured game).Pour configurer vos produits et services web dans Partner Center
- Créez un certificat Business Partner à l’aide du lien Generate Certificate du service web. (Sélectionnez Developer Settings > XBOX Live > Web Services.) Choisissez le lien dans la ligne du service web auquel votre partie de confiance est liée.
- Accédez à l’interface de gestion Business Partner (sélectionnez Developer Settings > XBOX Live > Business Partner) et copiez le Business Partner ID qui correspond à celui du service web utilisé à l’étape 1. (Exemple de Business Partner ID : 12345678-9012-3456-7890-123456789012)
- Dans la page Partner Center Overview de vos produits, sélectionnez Create a new, puis Product group.
- Attribuez ce groupe de produits à un Dev Studio, ou sélectionnez Create a new developer studio si vous n’en avez pas encore.
- Assurez-vous que l’ID du Dev Studio sélectionné correspond au Business Partner ID de l’étape 2. Copiez le Business Partner ID dans Dev Studio ID (optional) si ce champ est vide. Si ce champ contient déjà une valeur utilisée, créez un nouveau Dev Studio au lieu de l’écraser afin de ne pas rompre les mappages de produits de service à service existants.
- Une fois le Dev Studio configuré avec l’ID correspondant du Business Partner, revenez au Product Group que vous avez créé. Ajoutez votre jeu et tous les produits à la liste Included in this product group.
- Sélectionnez Save pour terminer la création du groupe de produits.
- Accédez à l’interface XBOX Settings de votre jeu et vérifiez que le Business Partner lié est bien celui utilisé à l’étape 2.
- Republiez tous les éléments du groupe de produits sur le Microsoft Store dans votre bac à sable ou votre environnement de développement.
