Workflow d'autorisation du site Web

Autorisez une application à l'aide d'un site Web.

Le flux de travail d'autorisation du site Web (OAuth) est lancé depuis votre propre site Web. Les partenaires commerciaux se connectent à votre site Web et sélectionnent un Authorize bouton que vous configurez pour lancer l'autorisation. Pour plus d'informations, reportez-vous aux étapes suivantes.

📘

Remarque

Remarque : les exemples des étapes suivantes concernent une application vendeur, utilisant un URI d'autorisation OAuth basé sur une URL de Seller Central. Pour les applications fournisseurs, vous pouvez remplacer l'URL de Seller Central par une URL de Vendor Central. Pour plus d'informations, reportez-vous à la section Créer un URI d'autorisation OAuth.

Avant de créer un flux de travail d'autorisation pour un site Web de production, testez votre flux de travail d'autorisation pendant que votre application est en cours DRAFT (version=beta) statut. Pour plus d'informations, reportez-vous à Étape 2. Après avoir vérifié que votre flux de travail fonctionne correctement, vous pouvez le convertir de l'ébauche à la production.

Étape 1 : configurer un bouton d'autorisation

Configurez un Authorize bouton sur le site Web de votre application que le partenaire commercial peut sélectionner pour lancer l'autorisation de votre demande. Lorsque le partenaire de vente sélectionne le bouton, votre site Web charge un URI d'autorisation OAuth dans le navigateur. Votre site Web redirige ensuite le partenaire commercial vers une page de connexion Amazon. Une fois connecté, votre site Web redirige le partenaire de vente vers une page de consentement où il peut approuver votre demande pour passer des appels à l'API du partenaire de vente en son nom. Pour plus d'informations, reportez-vous à Création d'un URI d'autorisation OAuth.

📘

Remarque

Si vous disposez d'URI d'autorisation OAuth pour plusieurs régions, assurez-vous de configurer votre Authorize boutons en conséquence. Les partenaires commerciaux doivent être redirigés vers la page de connexion Seller Central (pour les vendeurs) ou Vendor Central (pour les fournisseurs) de leur région.

Authorize la configuration des boutons est une tâche unique.

Étape 1 : Le partenaire de vente initie l'autorisation depuis votre site Web

  1. Le partenaire de vente se connecte à votre site Web. S'il ne dispose pas encore de compte, il doit terminer votre processus d'inscription.

  2. Le partenaire de vente sélectionne Authorize bouton que vous avez configuré dans Étape 1.

  3. Votre application charge l'URI d'autorisation OAuth dans le navigateur, en ajoutant les paramètres de requête suivants :

    Paramètre
    Description
    redirect_uriCe paramètre fait référence à un URI redirigeant le navigateur vers votre application. Il s'agit de l'URI de redirection OAuth que vous avez spécifié lorsque vous avez enregistré votre application. Lorsque vous n'incluez pas le paramètre redirect_uri, la valeur par défaut est le premier URI de redirection OAuth que vous avez spécifié lors de l'enregistrement de votre application.
    stateUne valeur d'état générée par votre application. Votre application utilise cette valeur pour maintenir l'état entre cette demande et la réponse, afin de se prémunir contre les attaques de type “cross-site request forgery” (falsification des requêtes intersites).

🚧

Important

Les informations OAuth étant transmises via les paramètres de requête d'URL, nous vous recommandons de :

  • Assurez-vous que le jeton d'état est de courte durée et qu'il est unique de manière vérifiable pour votre utilisateur.
  • Réglez le Referrer-Policy: no-referrer En-tête HTTP, qui empêche la fuite d'informations sensibles vers les sites Web auxquels votre site Web renvoie. Pour plus d'informations sur la falsification des requêtes intersites et le calcul d'un paramètre d'état, reportez-vous à Falsification de requêtes intersites.

Si vous incluez le version=beta paramètre, le flux de travail autorise une application dans DRAFT statut. Si vous n'incluez pas ce paramètre, le flux de travail autorise la publication d'une application sur l'Appstore des partenaires de vente.

Par exemple :

https://sellercentral.amazon.com/apps/authorize/consent?application_id=appidexample&state=stateexample&version=beta

ou

https://sellercentral.amazon.com/apps/authorize/consent?application_id=appidexample&state=stateexample

Le partenaire de vente accède à la page de connexion de Seller Central (pour les vendeurs) ou Vendor Central (pour les fournisseurs).

Étape 3 : Le partenaire de vente consent à l'autorisation de la demande

Le partenaire de vente se connecte à Seller Central ou Vendor Central, selon le type d'URI d'autorisation OAuth que vous avez créé. Pour plus d'informations, reportez-vous à Création d'un URI d'autorisation OAuth.

Une fois connecté, la page de consentement apparaît. Le partenaire de vente peut désormais consulter l'accès aux données demandé par votre application. Ils peuvent sélectionner Confirm pour continuer ou Cancel pour sortir sans autorisation.

Étape 4 : Amazon envoie les informations d'autorisation

Amazon affiche brièvement une page pour indiquer que nous vous autorisons à accéder aux données du partenaire commercial. Dans le même temps, les actions suivantes ont lieu :

  1. Amazon charge votre URI de redirection OAuth dans le navigateur et ajoute les paramètres de requête suivants :

    Paramètre
    Description
    stateLa valeur d'état de Étape 2.
    selling_partner_idIdentifiant du partenaire de vente autorisant votre application.
    spapi_oauth_codeLe code d'autorisation Login with Amazon (LWA) que vous utilisez pour générer un jeton d'actualisation LWA (consultez Étape 5).

    📘

    Remarque

    Un code d'autorisation LWA expire au bout de cinq minutes. Assurez-vous de générer un jeton d'actualisation LWA avant son expiration.

    Exemple de demande :

    https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample
  2. Votre application valide la valeur d'état.

  3. Votre application enregistre le selling_partner_id et spapi_oauth_code valeurs.

  4. La page de destination de votre site Web s'affiche.

Étape 5 : L'application utilise un code d'autorisation LWA pour générer un jeton d'actualisation LWA

Le Connectez-vous à l'aide du SDK Amazon pour JavaScript peut vous aider à utiliser un Code d'autorisation LWA pour générer un jeton d'actualisation LWA.

📘

Remarque

Un code d'autorisation LWA expire au bout de cinq minutes. Assurez-vous de l'utiliser pour générer un jeton d'actualisation LWA avant son expiration.

Utiliser un code d'autorisation LWA pour générer un jeton d'actualisation LWA

  1. Votre application appelle le serveur d'autorisation Login with Amazon (LWA) (https://api.amazon.com/auth/o2/token) pour utiliser le code d'autorisation LWA afin de générer un jeton d'actualisation LWA. L'appel doit inclure les paramètres de requête suivants :

    Paramètre
    Description
    grant_typeType d'autorisation d'accès demandée. Doit être authorization_code.
    codeLe code d'autorisation LWA que vous avez reçu Étape 4. Amazon vous envoie le informations d'autorisation.
    redirect_uriL'URI de redirection pour votre application.
    client_idCe paramètre fait partie de vos informations d'identification LWA. Pour obtenir cette valeur, reportez-vous à la section Affichage des informations et des informations d'identification relatives à votre application.
    client_secretCe paramètre fait partie de vos informations d'identification LWA. Pour obtenir cette valeur, reportez-vous à la section Affichage des informations et des informations d'identification relatives à votre application.

    Exemple de demande :

    POST /auth/o2/token HTTP/l.l Host: api.amazon.com Content-Type: application/x-www-form-urlencoded;charset=UTF-8 grant_type=authorization_code&code=SplxlOexamplebYS6WxSbIA&client_id=foodev&client_secret=Y76SDl2F
  2. Le serveur d'autorisation LWA renvoie le jeton d'actualisation LWA. La réponse inclut les éléments suivants.

    Paramètre
    Description
    access_tokenUn jeton autorisant votre application à effectuer certaines actions pour le compte d'un partenaire de vente. Pour plus d'informations, reportez-vous à la section Se connecter à l'API partenaire de vente.
    token_typeCe paramètre correspond au type de jeton renvoyé. Doit être porteur (bearer).
    expires_inLe nombre de secondes avant que le jeton d'accès ne devienne invalide.
    refresh_tokenUn jeton avec une longue durée de vie qui peut être échangé contre un nouveau jeton d'accès. Pour plus d'informations, reportez-vous à la section Se connecter à l'API partenaire de vente.

    Exemple de réponse :

    { "access_token":"Atza|IQEBLjAsAexampleHpi0U-Dme37rR6CuUpSR", "token_type":"bearer", "expires_in":3600, "refresh_token":"Atzr|IQEBLzAtAhexamplewVz2Nn6f2y-tpJX2DeX" }
  3. Votre application enregistre la valeur refresh_token.

  4. Le navigateur affiche une page au partenaire de vente indiquant les prochaines étapes à suivre pour utiliser votre application.

Un jeton d'actualisation LWA est un jeton avec une longue durée de vie que vous échangez contre un jeton d'accès LWA. Un jeton d'accès obtenu par le biais de cet échange doit être inclus dans les appels à toutes les opérations de l'API partenaire de vente, sauf les opérations restreintes et les opérations sans autorisation, qui utilisent des modèles d'autorisation légèrement différents. Une fois qu'un jeton d'accès est émis, il est valide pendant une heure. Enfin, le même jeton d'accès peut être utilisé pour plusieurs appels d'API, jusqu'à son expiration.

Pour échanger un jeton d'actualisation contre un jeton d'accès à l'aide d'un SDK généré, reportez-vous à la section Se connecter à l'API partenaire de vente à l'aide d'un SDK Java généré. En revanche, pour échanger manuellement un jeton d'actualisation contre un jeton d'accès, reportez-vous à la section Se connecter à l'API partenaire de vente.

Convertissez le flux de travail d'autorisation des tests en production

Il existe deux manières de passer de la version bêta à la version de production :

  • Répertoriez votre application dans l'Appstore Selling Partner. Cela change automatiquement le statut de votre demande DRAFT pour PUBLISHED.

  • Ajoutez le paramètre version=beta à l'URI d'autorisation OAuth :


Cette page vous a-t-elle été utile ?