Skip to main content
Cet article décrit la configuration et les étapes nécessaires pour obtenir un User Store ID pour l’authentification de service à service du Microsoft Store. Un User Store ID authentifie les appels de service vers les API du Microsoft Store pour le compte d’un utilisateur spécifique. Sur les consoles XBOX, cette identité est liée au compte de l’objet XUser. Sur PC, l’identité est liée au compte connecté à l’application Microsoft Store et utilisé pour les achats.
Sur PC, l’identité du compte de l’application Microsoft Store peut être différente du compte connecté à XBOX Live qui joue au jeu.
Pour plus d’informations sur les cas où les comptes de jeu et d’achat peuvent être différents, consultez Gestion des scénarios de comptes Store non concordants sur PC. Il existe deux types de clés User Store ID.
  1. User Collections ID pour s’authentifier auprès du service Microsoft Store Collections
  2. User Purchase ID pour s’authentifier auprès du service Microsoft Store Purchase
Les sections suivantes décrivent le processus d’obtention d’un User Store ID pour appeler les services respectifs :
  1. Configurer une application Microsoft Entra ID.
  2. Associer votre ID d’application Microsoft Entra à votre application cliente dans Partner Center.
  3. Dans votre service, créer des jetons d’accès Microsoft Entra ID qui représentent votre identité d’éditeur.
  4. Dans votre jeu, créer une clé User Store ID qui représente l’identité de l’utilisateur et renvoyer cette clé à votre service.
  5. Authentifier les requêtes vers les API du Microsoft Store.
  6. Renouveler une clé User Store ID lorsqu’elle expire.
Ce processus fait intervenir deux composants logiciels :
  • Votre service : back-end sécurisé qui crée les jetons d’accès Microsoft Entra et appelle les API du Store.
  • Votre jeu : client qui crée les clés User Store ID pour l’utilisateur connecté et les transmet à votre service.

La bibliothèque .NET Microsoft.StoreServices et l’exemple associé

Pour simplifier l’intégration, utilisez Microsoft.StoreServices sur GitHub. La bibliothèque gère les flux d’authentification et de clés, et fournit des wrappers pour les appels aux services du Store. L’exemple inclut des modèles de bout en bout pour les consommables, le rapprochement des remboursements et le renouvellement des clés.

Étape 1 : Configurer une application Microsoft Entra ID

Avant de pouvoir utiliser les API du Microsoft Store, créez une application web Microsoft Entra qui identifie votre service lors des appels aux API. À partir de l’application web inscrite, obtenez l’ID de locataire, l’ID d’application et la clé secrète afin de générer les jetons d’accès requis lors des étapes suivantes.
Vous pouvez réutiliser l’ID de locataire, l’ID d’application et la clé secrète de l’application web pour plusieurs jeux et produits de votre éditeur. Il n’est pas nécessaire d’en créer une nouvelle pour chaque jeu.
  1. Si ce n’est pas déjà fait, suivez les instructions de Démarrage rapide : Inscrire une application auprès de la plateforme d’identités Microsoft pour inscrire une application Web app / API auprès de Microsoft Entra ID.
    [!NOTE] Lorsque vous inscrivez votre application, choisissez Web app / API comme type d’application. Ce type vous permet de récupérer une clé (également appelée secret client) pour votre application. Pour appeler les API du Microsoft Store, vous devez fournir un secret client lorsque vous demandez un jeton d’accès à Microsoft Entra ID lors d’une étape ultérieure.
  2. Dans le portail de gestion Azure, accédez à Microsoft Entra ID. Sélectionnez votre annuaire, App registrations dans le volet de gauche, puis votre application.
  3. Copiez les valeurs Application (client) ID et Directory (tenant) ID pour une utilisation ultérieure.
  4. Créez et copiez un nouveau secret client sous Certificates & Secrets dans le volet de gauche.

Étape 2 : Associer votre ID d’application Microsoft Entra à votre application cliente dans Partner Center

  1. Connectez-vous à Partner Center, puis sélectionnez votre jeu.
  2. Sélectionnez Services > Product collections and purchases. Entrez votre ID d’application Microsoft Entra dans l’un des champs Client ID disponibles.
  3. Sélectionnez Save.
  4. Republiez le jeu et ses extensions dans le Store.
Les produits d’extension héritent des Client IDs enregistrés sur la page Product collections and purchases de leur jeu parent. Les produits de type Game Bundle disposent de leur propre page Product collections and purchases, sur laquelle vous devez ajouter les Client IDs.

Étape 3 : Création de jetons d’accès Microsoft Entra ID

Toutes les requêtes d’API nécessitent un jeton du porteur (Bearer), appelé jeton d’accès de service, dans l’en-tête Authorization. L’autre jeton d’accès nécessaire dépend des services ou de l’API que vous appelez.
Créez les jetons d’accès Microsoft Entra ID uniquement dans le contexte de votre service, et non dans votre application. Si vous envoyez votre secret client à votre application, il pourrait être compromis.

Comprendre les différents jetons d’accès et URI d’audience

Chaque jeton d’accès est associé à un URI d’audience différent utilisé pour le créer.
N’envoyez jamais au client les jetons d’accès de service qui utilisent l’audience https://onestore.microsoft.com/.default. Stockez-les de manière sécurisée au sein de votre service.

Création de jetons d’accès

Pour créer les jetons d’accès, utilisez l’API OAuth 2.0 dans votre service. Suivez les instructions de Plateforme d’identités Microsoft et flux d’informations d’identification du client OAuth 2.0 pour envoyer une requête HTTP POST au point de terminaison https://login.microsoftonline.com/<tenant_id>/oauth2/v2.0/token. L’exemple suivant montre un exemple de requête.
Pour chaque demande de jeton : Vous pouvez créer un nouveau jeton d’accès avant ou après l’expiration d’un jeton d’accès existant. Pour plus d’informations sur la structure d’un jeton d’accès, consultez Jetons de sécurité.

Étape 4 : Créer une clé User Store ID

Pour identifier l’utilisateur dans la requête, votre service obtient une clé User Store ID. User Store ID est un terme générique désignant soit un User Collections ID, soit un User Purchase ID. La seule différence entre ces clés est le service correspondant auprès duquel elles peuvent s’authentifier. Vous pouvez générer des clés User Store ID sur le client à l’aide des API du GDK ou sur votre service. Cette section porte sur la création de clés User Store ID sur le client via les API du GDK. Pour plus d’informations sur la génération de clés User Store ID sur votre service, consultez Demander un User Store ID à partir de votre service avec des X-tokens ou OAuth 2.0. Les clés User Store ID sont des JSON Web Tokens (JWT) qui représentent l’utilisateur connecté à l’application Microsoft Store. Pour plus d’informations sur les revendications de cette clé, consultez Revendications d’une clé User Store ID.
Chaque clé User Store ID est valide pendant 30 jours. Votre service peut renouveler la clé avant son expiration. Si votre service a besoin d’un accès continu pour interroger les droits d’utilisation de l’utilisateur, renouvelez vos clés Microsoft Store ID plutôt que d’en créer de nouvelles. Pour plus d’informations, consultez Renouveler une clé User Store ID.

Pour créer une clé User Collections ID pour le service Microsoft Store Collections

La clé User Collections ID vous permet d’interroger les produits possédés par un utilisateur et de gérer les produits consommables à l’aide des API Collections. Pour plus d’informations sur la gestion des consommables, consultez Gestion des produits consommables à partir de votre service.
  1. Transmettez au jeu un jeton d’accès Collections que vous avez créé à l’étape 3.
  2. Dans le jeu, appelez XStoreGetUserCollectionsIdAsync pour récupérer la clé User Collections ID. Transmettez le jeton d’accès Collections en tant que paramètre serviceTicket. Vous pouvez éventuellement transmettre votre identificateur d’utilisateur interne dans publisherUserId.
  3. Une fois que votre application a créé une clé User Collections ID, renvoyez la clé à votre service.

Pour créer une clé User Purchase ID pour le service Microsoft Store Purchase

La clé User Purchase ID vous permet d’interroger les produits possédés par un utilisateur et de gérer les produits consommables à l’aide des API Purchase. Pour plus d’informations sur la gestion des consommables, consultez Gestion des produits consommables à partir de votre service.
  1. Transmettez au jeu un jeton d’accès Purchase que vous avez créé à l’étape 3.
  2. Dans le jeu, appelez XStoreGetUserPurchaseIdAsync pour récupérer la clé User Purchase ID. Transmettez le jeton d’accès Purchase en tant que paramètre serviceTicket. Vous pouvez éventuellement transmettre votre identificateur d’utilisateur interne dans publisherUserId.
  3. Une fois que votre application a créé une clé User Purchase ID, renvoyez la clé à votre service.

Étape 5 : Authentifier les appels vers les API du Microsoft Store

Pour obtenir des instructions, consultez Authentification avec Microsoft Entra ID et les User Store IDs.

Étape 6 : Renouveler une clé User Store ID lorsqu’elle expire

Pour obtenir des instructions, consultez Renouveler une clé User Store ID.

Informations supplémentaires

Diagramme de création d’une clé User Store ID

Le diagramme suivant illustre le processus de création d’une clé User Store ID. Diagramme illustrant le processus de création d'une clé User Store ID. De gauche à droite, les blocs représentent votre service, Microsoft Entra ID, votre application, le Windows SDK et le Store. Des flèches numérotées montrent le flux de votre service vers Microsoft Entra ID, de votre service vers votre application, de votre application vers le Windows SDK et le Store, puis de votre application vers votre service.

Revendications d’une clé User Store ID

Une clé User Store ID est un JWT qui représente l’identité de l’utilisateur dont vous souhaitez consulter les informations de propriété des produits. Une fois décodée en Base64, une clé User Store ID contient les revendications indiquées dans le tableau suivant. L’exemple suivant montre un en-tête User Store ID décodé.
Traitez la signature JWT et la revendication kid comme des valeurs opaques dans les services clients et de titre. Les API du Store valident la signature. Exemple d’ensemble de revendications User Store ID décodé.

Documentation de référence de l’API

Voir aussi

Gérer les produits à partir de vos services Authentifier votre service auprès des API du Microsoft Store Demander un User Store ID à partir de votre service avec des X-tokens ou OAuth 2.0 Renouveler une clé User Store ID Bibliothèque Microsoft.StoreServices Exemple Microsoft.StoreServices
Last modified on October 6, 2026