Workflow zur Autorisierung von Websites
Autorisieren Sie eine App über eine Website.
Der Website-Autorisierungs-Workflow (OAuth) wird von Ihrer eigenen Website aus initiiert. Vertriebspartner melden sich auf Ihrer Website an und wählen eine Authorize Schaltfläche, die Sie so konfigurieren, dass die Autorisierung initiiert wird. Weitere Informationen finden Sie in den folgenden Schritten.
Hinweis
Hinweis. Die Beispiele in den folgenden Schritten beziehen sich auf eine Verkäufer-App, bei der ein OAuth-Autorisierungs-URI verwendet wird, der auf einer Seller Central-URL basiert. Für Anbieter-Apps können Sie die Seller Central-URL durch eine Vendor Central-URL ersetzen . Weitere Informationen finden Sie unter Einen OAuth-Autorisierungs-URI erstellen.
Bevor Sie einen Autorisierungsworkflow für Produktionswebsites erstellen, testen Sie Ihren Autorisierungsworkflow, während sich Ihre Anwendung befindet DRAFT
(version=beta
) Status. Weitere Informationen finden Sie unter Schritt 2. Nachdem Sie überprüft haben, dass Ihr Workflow ordnungsgemäß funktioniert, können Sie konvertiere es vom Entwurf zur Produktion.
Schritt 1: Richten Sie eine Autorisierungsschaltfläche ein
Richten Sie ein Authorize Schaltfläche auf Ihrer Bewerbungswebsite, die der Vertriebspartner auswählen kann, um die Autorisierung für Ihren Antrag einzuleiten. Wenn der Vertriebspartner die Schaltfläche auswählt, lädt Ihre Website eine OAuth-Autorisierungs-URI in den Browser. Ihre Website leitet den Vertriebspartner dann auf eine Amazon-Anmeldeseite weiter. Nach der Anmeldung leitet Ihre Website den Vertriebspartner auf eine Zustimmungsseite weiter, auf der er Ihren Antrag genehmigen kann, in seinem Namen die Vertriebspartner-API aufzurufen. Weitere Informationen finden Sie unter Erstellen Sie eine OAuth-Autorisierungs-URI.
Hinweis
Wenn Sie OAuth-Autorisierungs-URIs für mehr als eine Region haben, stellen Sie sicher, dass Sie Ihre einrichten Authorize Knöpfe entsprechend. Vertriebspartner müssen zur Anmeldeseite von Seller Central (für Verkäufer) oder Vendor Central (für Verkäufer) für ihre Region weitergeleitet werden.
Authorize Das Einrichten der Schaltfläche ist eine einmalige Aufgabe.
Schritt 1. Der Verkaufspartner leitet die Autorisierung von Ihrer Website aus ein
-
Der Verkaufspartner meldet sich auf Ihrer Website an. Wenn der Verkaufspartner noch kein Konto hat, schließt er Ihren Registrierungsprozess ab.
-
Der Vertriebspartner wählt die Authorize Schaltfläche, die du eingerichtet hast Schritt 1.
-
Ihre App lädt den OAuth-Autorisierungs-URI in den Browser und fügt die folgenden Abfrageparameter hinzu:
ParameterBeschreibung redirect_uri
Ein 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.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 URL-Abfrageparameter weitergegeben werden, empfehlen wir Ihnen:
- Stellen Sie sicher, dass das State-Token kurzlebig und nachweislich für Ihren Benutzer eindeutig ist.
- Stellen Sie das
Referrer-Policy: no-referrer
HTTP-Header, der verhindert, dass vertrauliche Informationen an Websites gelangen, auf die Ihre Website verlinkt. Weitere Informationen zur seitenübergreifenden Anforderungsfälschung und zur Berechnung eines Zustandsparameters finden Sie unter Seitenübergreifende Anforderungsfälschung.
Wenn Sie die einbeziehen version=beta
Parameter, der Workflow autorisiert eine Anwendung in DRAFT
Status. Wenn Sie diesen Parameter nicht angeben, autorisiert der Workflow eine im Appstore des Vertriebspartners veröffentlichte Anwendung.
Zum Beispiel:
https://sellercentral.amazon.com/apps/authorize/consent?application_id=appidexample&state=stateexample&version=beta
oder
https://sellercentral.amazon.com/apps/authorize/consent?application_id=appidexample&state=stateexample
Der Verkaufspartner gelangt auf die Anmeldeseite von Seller Central (für Verkäufer) oder Vendor Central (für Verkäufer).
Schritt 3: Der Vertriebspartner stimmt der Antragsgenehmigung zu
Der Vertriebspartner meldet sich bei Seller Central oder Vendor Central an, je nachdem, welche Art von OAuth-Autorisierungs-URI Sie erstellt haben. Weitere Informationen finden Sie unter Erstellen Sie eine OAuth-Autorisierungs-URI.
Nach der Anmeldung wird die Zustimmungsseite angezeigt. Der Vertriebspartner kann nun den in Ihrem Antrag angeforderten Datenzugriff überprüfen. Sie können wählen Confirm um fortzufahren oder Cancel ohne Autorisierung zu beenden.
Schritt 4: Amazon sendet Autorisierungsinformationen
Amazon zeigt kurz eine Seite an, auf der Sie darauf hingewiesen werden, dass wir Sie autorisieren, auf die Daten des Vertriebspartners zuzugreifen. Gleichzeitig finden die folgenden Aktionen statt:
-
Amazon lädt Ihre OAuth-Umleitungs-URI in den Browser und fügt die folgenden Abfrageparameter hinzu:
Hinweis
Ein LWA-Autorisierungscode läuft nach fünf Minuten ab. Stellen Sie sicher, dass Sie ein LWA-Aktualisierungstoken generieren, bevor es abläuft.
Beispiel für eine Anfrage:
https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample -
Ihre App validiert den Statuswert.
-
Ihre Anwendung speichert die
selling_partner_id
undspapi_oauth_code
Werte. -
Die Landingpage Ihrer Website wird angezeigt.
Schritt 5: Die Anwendung verwendet einen LWA-Autorisierungscode, um ein LWA-Aktualisierungstoken zu generieren
Das Melden Sie sich mit Amazon SDK für JavaScript an kann dir helfen, eine zu benutzen LWA-Autorisierungscode um ein LWA-Aktualisierungstoken zu generieren.
Hinweis
Ein LWA-Autorisierungscode läuft nach fünf Minuten ab. Stellen Sie sicher, dass Sie ihn verwenden, um ein LWA-Aktualisierungstoken zu generieren, bevor es abläuft.
Verwenden Sie einen LWA-Autorisierungscode, um ein LWA-Aktualisierungstoken zu generieren
-
Ihre Anwendung ruft den Autorisierungsserver Login with Amazon (LWA) auf (
https://api.amazon.com/auth/o2/token
), um den LWA-Autorisierungscode zu verwenden, um ein LWA-Aktualisierungstoken zu generieren. Der Aufruf muss die folgenden Abfrageparameter enthalten:ParameterBeschreibung grant_type
Die Art der beantragten Zugangsgewährung. Muss authorization_code
sein.code
Der LWA-Autorisierungscode, den Sie in erhalten haben Schritt 4. Amazon schickt dir die Informationen zur Autorisierung. redirect_uri
Der Weiterleitungs-URI für Ihre App. client_id
Teil Ihrer LWA-Anmeldeinformationen. Informationen zu diesem Wert finden Sie unter Ihre Appinformationen und Anmeldeinformationen anzeigen. client_secret
Teil Ihrer LWA-Anmeldeinformationen. Informationen zu diesem Wert finden Sie unter Ihre Appinformationen und Anmeldeinformationen anzeigen. Beispiel für eine Anfrage:
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 -
Der LWA-Autorisierungsserver gibt das LWA-Aktualisierungstoken zurück. Die Antwort umfasst die folgenden Elemente.
ParameterBeschreibung access_token
Ein 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_type
Der Typ des zurückgegebenen Tokens. Sollte Bearer sein. expires_in
Die Anzahl der Sekunden, bevor das Zugriffstoken ungültig wird. refresh_token
Ein langlebiges Token, das gegen ein neues Zugriffstoken ausgetauscht werden kann. Weitere Informationen finden Sie unter Verbindung zur Verkaufspartner-API herstellen. Beispiel für eine Antwort:
{ "access_token":"Atza|IQEBLjAsAexampleHpi0U-Dme37rR6CuUpSR", "token_type":"bearer", "expires_in":3600, "refresh_token":"Atzr|IQEBLzAtAhexamplewVz2Nn6f2y-tpJX2DeX" } -
Ihre App speichert den
refresh_token
-Wert. -
Der Browser zeigt dem Verkaufspartner eine Seite an, auf der die nächsten Schritte zur Verwendung Ihrer App beschrieben werden.
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.
Konvertieren Sie den Testautorisierungsworkflow in die Produktion
Es gibt zwei Möglichkeiten, von der Betaversion zur Produktion zu wechseln:
-
Bieten Sie Ihre Bewerbung im Verkaufspartner-Appstore an. Dadurch ändert sich automatisch Ihr Bewerbungsstatus von
DRAFT
zuPUBLISHED
. -
Fügen Sie den
version=beta
-Parameter dem OAuth-Autorisierungs-URI hinzu:
Updated 23 days ago