La référence AWS Partner Central d'API a été restructurée. Pour plus d'informations sur les opérations d'API prises en charge, consultez la référence des AWS Partner Central API.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configuration et authentification
La configuration et l'authentification avec l'API AWS Partner Central s'effectuent en trois étapes. Voici un aperçu du processus :
-
Associez votre compte AWS Marketplace vendeur à Partner Central.
-
Configurez les autorisations à l'aide d'IAM.
-
Authentifiez vos appels d'API à l'aide de Signature Version 4 (SigV4).
Lier votre Compte AWS vers Partner Central
La connexion Compte AWSà Partner Central est une condition préalable à l'utilisation de l'API. Pour plus d'informations, consultez Lier les comptes AWS Partner Central aux comptes AWS Marketplace vendeur. Vous devez vous connecter à Partner Central avec un compte disposant des autorisations de responsable d'alliance ou d'administrateur du cloud, accéder à la Account Linking section et suivre les instructions.
Configuration de IAM
Pour utiliser l'API AWS Partner Central, vous aurez besoin d'un rôle Gestion des identités et des accès AWS(IAM) ou d'un utilisateur IAM pour commencer à passer des appels. Pour plus d'informations, voir Quand utiliser IAM ? . Pour cela, suivez les étapes de création de rôles IAM et de création d'un utilisateur IAM décrites dans vos Compte AWS guides. Vous devez créer cet IAM Role/User dans votre compte Central-linked AWS Marketplace vendeur partenaire. role/user La création d'IAM n'entraîne aucun coût.
-
Création d'un IAM Role/User
Connectez-vous au AWS Management Console, accédez au service IAM et suivez les étapes pour créer un rôle IAM ou un utilisateur IAM.
-
Attribuer des politiques :
Joignez des politiques gérées ou créez des politiques personnalisées selon vos besoins. Pour modifier ou étendre les autorisations, appliquez des politiques supplémentaires au rôle IAM au lieu de copier et de combiner le contenu
AWSPartnerCentralOpportunityManagementavec d'autres autorisations. Évitez de dupliquer les politiques gérées, car cela vous empêchera d'accéder automatiquement aux nouvelles fonctionnalités au fur et à mesure de leur publication, et vous devrez mettre à jour vos politiques manuellement à l'avenir. Pour plus de détails sur les politiques d'accès, consultez la documentation sur le contrôle d'accès.
Gestion AWS Marketplace offres
Pour gérer les AWS Marketplace offres et les associer à des opportunités, les partenaires doivent autoriser le rôle IAM à accéder aux API du catalogue. Assurez-vous qu' role/user il dispose d'autorisations, telles que aws-marketplace:ListEntities etaws-marketplace:SearchAgreements.
Authentification des appels d'API
AWS L'API Partner Central utilise Signature Version 4 (SigV4) pour l'authentification. Voici comment l'implémenter :
Utilisation de AWS Kit SDK
AWS Les SDK gèrent automatiquement la signature des demandes. Entrez vos AWS informations d'identification et le SDK s'occupe du reste.
-
Pour Java, voir Fournir des informations d'identification temporaires au AWS SDK for Java.
-
Pour JavaScript (Node.js), voir Configuration des informations d'identification dans Node.js.
-
Pour .NET, voir Credential and profile resolution.
-
Pour d'autres langages de programmation et d'autres exemples, consultez les Outils sur lesquels vous pouvez vous appuyer AWS
.
Authentification sans utiliser le AWS Kit SDK
Si aucun AWS SDK n'est disponible pour le langage de programmation que vous avez choisi, l'authentification consiste à créer manuellement une demande canonique, à signer la demande et à gérer les jetons de session.AWS propose des conseils complets sur l'utilisation de la signature SigV4. Cependant, veuillez noter que l'utilisation du AWS SDK est recommandée car la signature manuelle des demandes augmente la complexité et nécessite une gestion minutieuse des jetons de sécurité.
Chaque demande pour le protocole AWSJSON1_0 DOIT être envoyée à l'URL racine (/) en utilisant la méthode HTTP « POST » en utilisant les en-têtes suivants.
En-têtes obligatoires
Chaque demande d'API pour le protocole AWSJSON1_0 DOIT être envoyée à l'URL racine (/) en utilisant la méthode HTTP « POST » en utilisant les en-têtes suivants.
| En-tête | Obligatoire | Description |
|---|---|---|
| Content-Type | true | Cet en-tête a une valeur statique deapplication/x-amz-json-1.0. |
| Content-Length | true | L' Content-Length en-tête standard défini par la RFC 9110 #section |
| X-Amz-Target | vrai pour les demandes | Par exemple, la valeur du fonctionnement CreatePartner du service PartnerCentralAccount estPartnerCentralAccount.CreatePartner. |
Signature de vos appels avec un agent utilisateur personnalisé
Lorsque vous envoyez des demandes d'API àAWS Partner Central, nous vous recommandons d'inclure l'X-Amzn-User-Agenten-tête pour aider àAWS identifier la source de l'application cliente, à contrôler l'utilisation et à auditer les performances.AWS utilise cet en-tête pour distinguer le type d'application client effectuant l'appel et pour recueillir des informations sur le taux de réussite des différentes implémentations clientes.
En-tête d'agent utilisateur personnalisé
Nom de l'en-tête : X-Amzn-User-Agent
Objectif : distingue le type de client qui fait la demande d'API, en catégorisant la source de l'interaction.
Format : {Integrator}|{Product}
Exemple de valeur : AWS|AWS Partner CRM Connector
L'inclusion de cet en-tête dans chaque demande permet d'AWS analyser les modèles de demandes, de suivre les intégrations et d'améliorer l'expérience API pour les différents systèmes clients.
Utilisation d'en-têtes personnalisés dans les SDK
Pour inclure l'X-Amzn-User-Agenten-tête dans les appels du SDK, vous pouvez modifier le comportement des demandes du client avant de lancer l'appel d'API. Vous trouverez ci-dessous un exemple d'API de vente utilisant le AWS SDK pour Python (Boto3) :
import boto3 # Define service and endpoint details service_name = "partnercentral-selling" endpoint_url = "https://partnercentral-selling.us-east-1.api.aws" # Create a boto3 client for Partner Central partner_central_client = boto3.client( service_name=service_name, ='us-east-1', endpoint_url=endpoint_url ) # Function to add the custom User-Agent header def add_version_header(params, **kwargs): params["headers"]['X-Amzn-User-Agent'] = 'AWS|AWS Partner CRM Connector' # Register the event to modify the request before the call is made partner_central_client.meta.events.register( f'before-call.{service_name}.*', add_version_header ) # Now, whenever an API call is made using this client, the custom User-Agent header will be included
Cet exemple montre comment enregistrer un événement dans le SDK Boto3 pour ajouter automatiquement l'X-Amzn-User-Agenten-tête à chaque demande d'API. La même approche peut être appliquée à d'autres AWS SDK en modifiant leurs mécanismes d'interception des demandes respectifs.
Note
Le format X-Amzn-User-Agent d'en-tête a été simplifié. Nous vous recommandons d'utiliser le nouveau format. Le format précédent (CompanyName|ProductName|CRMName|ProductVersion) reste pris en charge pour des raisons de rétrocompatibilité. Les intégrations existantes continueront de fonctionner sans modification.