Dokumentation
Entwickler-HubAPI-StatusUnterstützung

Workflow zur Autorisierung im Verkaufspartner-Appstore

Autorisieren Sie eine App über den Verkaufspartner-Appstore.

Verkaufspartner können den Verkaufspartner-Appstore nutzen, um Anwendungen von Drittanbietern zu entdecken und zu nutzen, die in die SP-API integriert sind. Verkaufspartner können diese Anwendungen verwenden, um ihr Amazon-Verkaufsgeschäft effizienter zu verwalten. Um eine Anwendung aus dem Verkaufspartner-Appstore verwenden zu können, muss der Verkaufspartner die Anwendung dazu autorisieren, auf die Kontoinformationen seines Amazon-Verkaufspartners zuzugreifen. Der Anwendungszugriff wird über einen OAuth-Workflow gewährt, der die folgenden Schritte umfasst:

Schritt 1. Die Autorisierung im Verkaufspartner-Appstore initiieren

  1. Melden Sie sich bei Seller Central an und navigieren Sie zum Verkaufspartner-Appstore.
  2. Öffne das Detail Seite für deine Bewerbung.
  3. Wählen Authorize Now.

Schritt 2. Zur Autorisierung Ihrer App zustimmen

  1. Überprüfen und akzeptieren Sie den von Ihrer App angeforderten Datenzugriff.

  2. Wählen Login to < your application name > now.

    Amazon lädt Ihren Login-URI (den Sie bei der Registrierung der App angegeben haben) in den Browser und fügt die folgenden Abfrageparameter hinzu:

    ParameterBeschreibung
    amazon_callback_uriEin URI für die Umleitung des Browsers zu Amazon.
    amazon_stateEin von Amazon generierter Statuswert zum Schutz vor Cross-Site-Request-Forgery-Angriffen.
    selling_partner_idDie ID des Verkaufspartners, der Ihre App autorisiert.

    📘

    Hinweis

    Hinweis: Handelt es sich um einen Test-Workflow (gestartet durch Navigieren zu Ihrem OAuth-Autorisierungs-URI), bezieht Amazon den version=beta-Parameter mit ein. Wenn es sich um einen Produktionsworkflow handelt (der im Verkaufspartner-Appstore gestartet wurde), schließt Amazon den Parameter nicht mit ein.

    Zum Beispiel:

    https://d2yzyfnnpjylxu.cloudfront.net/index.html?amazon_callback_uri=https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57&amazon_state=amazonstateexample&selling_partner_id=A3FHEXAMPLEYWS

Schritt 3. Bei Ihrer Website anmelden

  1. Loggen Sie sich auf Ihrer Website ein. Wenn Sie kein Konto haben, müssen Sie zuerst den Registrierungsprozess abschließen.

  2. Ihre App lädt den Amazon-Callback-URI (von Amazon im vorherigen Schritt übergeben) in den Browser und fügt die folgenden Parameter hinzu:

ParameterBeschreibung
redirect_uriEin URI für die Umleitung des Browsers zu Ihrer App. Dies muss der OAuth-Umleitungs-URI sein, den Sie bei der Registrierung Ihrer Appangegeben haben. Wenn Sie den Parameter redirect_uri nicht angeben, wird standardmäßig der erste OAuth-Umleitungs-URI verwendet, den Sie bei der Registrierung Ihrer Anwendung angegeben haben.

Optional

amazon_stateDer amazon_state-Wert, der von Amazon im vorherigen Schritt übergeben wurde.
state

Ein von Ihrer App generierter Statuswert. Ihre App verwendet diesen Wert, um den Status zwischen dieser Anfrage und der Antwort aufrechtzuerhalten und so den Schutz vor Angriffen durch Site-übergreifende Anforderungsfälschung zu gewährleisten.

Wichtig: Da OAuth-Informationen über URI-Abfrageparameter übergeben werden, empfehlen wir Ihnen dringend, Folgendes zu tun: (1) Stellen Sie sicher, dass das State-Token kurzlebig und für Ihren Benutzer nachweisbar eindeutig ist, und (2) richten Sie den Referrer-Policy: no-referrer HTTP-Header ein, der verhindert, dass vertrauliche Informationen an Websites weitergegeben werden, auf die Ihre Website verlinkt. Weitere Informationen zur Site-übergreifenden Anforderungsfälschung und zur Berechnung eines Statusparameters finden Sie unter Site-übergreifende Anforderungsfälschung.

📘

Hinweis

Wenn Sie Ihren Workflow testen, müssen Sie auch die version=beta Parameter, der sicherstellt, dass der Workflow eine Anwendung autorisiert in Draft Staat. Wenn Sie den Parameter nicht angeben, autorisiert der Workflow eine im Appstore des Vertriebspartners veröffentlichte Anwendung.

Zum Beispiel:

https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022&version=beta

Oder

https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022

Schritt 4. Amazon sendet Ihnen die Autorisierungsinformationen

Seller Central zeigt eine Benachrichtigung an, dass Amazon Sie zum Zugriff auf die Daten autorisiert. Während diese Seite angezeigt wird, finden die folgenden Aktionen statt:

  1. Amazon lädt Ihren OAuth-Umleitungs-URI in den Browser und fügt die folgenden Abfrageparameter hinzu:

    ParameterBeschreibung
    stateDen Statuswert, den Sie im vorherigen Schritt übergeben haben.
    selling_partner_idDie ID des Verkaufspartners, der Ihre App autorisiert.
    spapi_oauth_codeDen Autorisierungscode für den Login mit Amazon (LWA), den Sie gegen ein LWA-Aktualisierungstoken austauschen. Weitere Informationen finden Sie unter Schritt 5. Ihre App tauscht den LWA-Autorisierungscode gegen ein LWA-Aktualisierungstoken aus.
    Hinweis: Ein LWA-Autorisierungscode läuft nach fünf Minuten ab. Sie müssen ihn gegen ein LWA-Aktualisierungstoken austauschen, bevor er abläuft.

    Zum Beispiel:

    https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample
  2. Ihre App validiert den Statuswert.

  3. Ihre Anwendung speichert die selling_partner_id und spapi_oauth_code Werte.

  4. Die Landingpage Ihrer Website wird gestartet.

🚧

Wichtig

Entwickler sollten beachten, dass der Amazon-Callback-URI und der Status ablaufen, wenn der Anmeldevorgang länger als 10 Minuten dauert, wodurch der Workflow unterbrochen wird. Wenn nach der Registrierung keine Weiterleitung zum Rückruf-URI von Amazon erkannt wird, sollten Entwickler den Verkaufspartner bitten, den OAuth-Flow-Build mithilfe des Website-Workflows zu initiieren. Alternativ kann der Verkaufspartner zur Detailseite des Verkaufspartner-Appstores der Anwendung zurückkehren und den Workflow neu starten.

Schritt 5. Den LWA-Autorisierungscode gegen ein LWA-Aktualisierungstoken austauschen

Tipp

Hinweis: Sie können optional die Login mit Amazon SDK für JavaScript verwenden, um den Austausch eines LWA-Autorisierungscodes gegen ein LWA-Aktualisierungstoken zu erleichtern. Weitere Informationen finden Sie in der Dokumentation "Login mit Amazon":

  1. Ihre App ruft den Autorisierungsserver Login with Amazon (LWA) auf (https://api.amazon.com/auth/o2/token), um den LWA-Autorisierungscode gegen ein LWA-Aktualisierungstoken auszutauschen. Der Aufruf muss die folgenden Abfrageparameter enthalten:

    ParameterBeschreibung
    grant_typeDie Art der beantragten Zugangsgewährung. Muss authorization_code sein.
    codeDer LWA-Autorisierungscode, den Sie in Schritt 4. Amazon sendet Ihnen die Autorisierungsinformationen erhalten haben.
    redirect_uriDer Weiterleitungs-URI für Ihre App.
    client_idTeil Ihrer LWA-Anmeldeinformationen. Informationen zu diesem Wert finden Sie unter Ihre Appinformationen und Anmeldeinformationen anzeigen.
    client_secretTeil Ihrer LWA-Anmeldeinformationen. Informationen zu diesem Wert finden Sie unter Ihre Appinformationen und Anmeldeinformationen anzeigen.

    Zum Beispiel:

    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. Der LWA-Autorisierungsserver gibt das LWA-Aktualisierungstoken zurück. Die Antwort ist in JSON und umfasst die folgenden Elemente:

    ParameterBeschreibung
    access_tokenEin Token, das Ihre App autorisiert, bestimmte Maßnahmen im Namen eines Verkaufspartners zu ergreifen. Weitere Informationen finden Sie unter Verbindung zur Verkaufspartner-API herstellen.
    token_typeDer Typ des zurückgegebenen Tokens (sollte bearer sein).
    expires_inDie Anzahl der Sekunden, bevor das Zugriffstoken ungültig wird.
    refresh_tokenEin langlebiges Token, das gegen ein neues Zugriffstoken ausgetauscht werden kann. Weitere Informationen finden Sie unter Verbindung zur Verkaufspartner-API herstellen.
    HTTP/l.l 200 OK Content-Type: application/json; charset UTF-8 Cache - Control: no-store Pragma: no-cache { "access_token": "Atza|IQEBLjAsAexampleHpi0U-Dme37rR6CuUpSR", "token_type": "bearer", "expires_in": 3600, "refresh_token": "Atzr|IQEBLzAtAhexamplewVz2Nn6f2y-tpJX2DeX" }
  3. Ihre App speichert den refresh_token-Wert.

  4. Der Browser öffnet eine Seite, auf der die nächsten Schritte zur Verwendung Ihrer App aufgeführt sind.

    📘

    Hinweis

    Ein LWA-Aktualisierungstoken ist ein langlebiges Token, das Sie gegen ein LWA-Zugriffstoken austauschen. Ein Zugriffstoken, das über diesen Token-Austausch abgerufen wurde, muss in den Aufrufen aller Vorgänge der Verkaufspartner-API enthalten sein, mit folgenden Ausnahmen: eingeschränkte Vorgänge und autorisierungsfreie Vorgänge, die etwas andere Autorisierungsmodelle verwenden. Nachdem ein Zugriffstoken ausgestellt wurde, ist es eine Stunde lang gültig. Das gleiche Zugriffstoken kann für mehrere API-Aufrufe verwendet werden, bis es abläuft.

    Informationen zum Austausch eines Aktualisierungstokens gegen ein Zugriffstoken mithilfe eines generierten SDK finden Sie unter Mit einem generierten Java-SDK eine Verbindung zur Verkaufspartner-API herstellen. Informationen zum manuellen Austausch eines Aktualisierungstokens gegen ein Zugriffstoken finden Sie unter Verbindung zur Verkaufspartner-API herstellen.

Schritt 6. (Optional) Testen Sie Ihren Autorisierungs-Workflow

Wir empfehlen Ihnen, Ihren Autorisierungsworkflow zu testen, um sicherzustellen, dass Ihre Anwendung Parameter mit Amazon austauschen und Autorisierungsinformationen erhalten kann. Sie müssen Ihren Autorisierungsworkflow testen, während Ihre Anwendung aktiv ist Draft Status.

  1. Stellen Sie sicher, dass Ihre Bewerbung in Draft Status.

  2. Erstellen Sie eine oder mehrere OAuth-Autorisierungs-URIs für Testzwecke. Schließen Sie die ein version=beta Parameter in den OAuth-URI (s), um anzugeben, dass der Workflow für die Autorisierung einer Anwendung in Draft Status. Weitere Informationen finden Sie unter Erstellen einer OAuth-Autorisierungs-URI.

    Anstatt bei Schritt 1. Der Verkaufspartner leitet die Autorisierung durch den Verkaufspartner-Appstore ein. zu beginnen, können Sie den Testworkflow starten, indem Sie zu einem vorhandenen OAuth-Autorisierungs-URI navigieren.

    Tipp

    Wenn Sie Ihren Workflow mit einem vertrauenswürdigen Vertriebspartner testen, stellen Sie sicher, dass dieser über die OAuth-Autorisierungs-URI verfügt, die seiner Betriebsregion entspricht.

    Wenn Ihr Testautorisierungsworkflow erfolgreich ist, können Sie ihn in einen Produktionsworkflow konvertieren.

Schritt 7. (Optional) Konvertieren Sie Ihren Testautorisierungs-Workflow in einen Produktionsworkflow

  1. Bieten Sie Ihre Bewerbung im Verkaufspartner-Appstore an. Durch diese Aktion wird Ihre Bewerbung automatisch geändert von Draft zu Published.

  2. Aktualisieren Sie Ihren Workflow, um das zu entfernen version=beta Parameter für die Amazon-Callback-URI. Wenn Sie diesen Parameter entfernen, wird sichergestellt, dass jeder Vertriebspartner Ihre veröffentlichte Anwendung ab Schritt 1.

Workflow-Diagramm

Das folgende Diagramm bietet einen Überblick über die OAuth-Workflows für den Verkaufspartner-Appstore und die Website.

The Selling Partner OAuth 2.0 workflows diagram for seller, vendor, and developer integration.


Hat Ihnen diese Seite weitergeholfen?