View a markdown version of this page

Configuration et authentification - AWS Partner Central

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 :

  1. Associez votre compte AWS Marketplace vendeur à Partner Central.

  2. Configurez les autorisations à l'aide d'IAM.

  3. 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.

  1. 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.

  2. 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 AWSPartnerCentralOpportunityManagement avec 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.

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 -8.6.
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.