Direkt zum Inhalt

Wie kann ich 403-Fehler „missing authentication token“ beheben, wenn ich API Gateway-REST- oder HTTP-APIs mit einem benutzerdefinierten Domain-Namen aufrufe?

Lesedauer: 2 Minute
0

Ich habe die Anweisungen befolgt, um einen benutzerdefinierten Domain-Namen für meine Amazon API Gateway-REST- oder HTTP-API einzurichten. Ich erhalte die Fehlermeldung 403 „Missing Authentication token“, wenn ich die API aufrufe.

Kurzbeschreibung

API Gateway-APIs mit benutzerdefinierten Domain-Namen geben beim Aufrufen der API den Fehler 403 „Missing Authentication token“ zurück, wenn der URL-Pfad falsch ist.

Hinweis: Wenn du die API Gateway-API-Stufen-URL verwendest, wird der 403-Fehler „Missing Authentication token“ nicht zurückgegeben.

Lösung

Benutzerdefinierte Domain-Namen, die für API Gateway-APIs konfiguriert sind, verwenden API-Zuordnungen, um API-Stufen zu verbinden und Datenverkehr über den benutzerdefinierten Domain-Namen an APIs zu senden. API-Zuordnungen haben eine API, eine Stufe, einen benutzerdefinierten Domain-Namen und optional einen Pfad, der für das Zuordnen verwendet werden soll. Weitere Informationen findest du unter Arbeiten mit API-Zuordnungen.

Im folgenden Beispiel ist die API-Zuordnung der benutzerdefinierten Domain „https://api.example.com“ wie folgt konfiguriert:

APIBeispielStufePfadStandard-URLBenutzerdefinierte Domain-URL
abcd3456efAPI 1dev(keine)https://abcd3456ef.execute-api.us-east-1.amazonaws.com/devhttps://api.example.com
wxyz1234abAPI 2testordershttps://wxyz1234ab.execute-api.us-east-1.amazonaws.com/testhttps://api.example.com/orders
mnop5678qrAPI 3prodcustomershttps://mnop5678qr.execute-api.us-east-1.amazonaws.com/prodhttps://api.example.com/customers

In dieser Beispielkonfiguration leitet eine Anforderung an API 1 über die URL https://abcd3456ef.execute-api.us-east-1.amazonaws.com/dev/resourceA den Datenverkehr erfolgreich an „resourceA“ weiter. Dies liegt daran, dass die Anforderung für den Stufennamen „dev“ an die Ressource gestellt wird. Dieselbe Anforderung mit der URL https://api.example.com/dev/resourceA gibt jedoch den Fehler 403 „Missing Authentication token“ zurück. Dieser Fehler tritt auf, weil die Stufe „dev“ dem (keinem) Pfad des benutzerdefinierten Domain-Namens zugeordnet ist. Um Anforderungen mithilfe des benutzerdefinierten Domain-Namens an „resourceA“ weiterzuleiten, stelle sicher, dass die URL https://api.example.com/resourceA lautet.

Ebenso lautet die URL des benutzerdefinierten Domain-Namens, die https://wxyz1234ab.execute-api.us-east-1.amazonaws.com/test/resourceB entspricht, https://api.example.com/orders/resourceB. Dies liegt daran, dass die „test“ -Stufe von API 2 dem Pfad „orders“ in der benutzerdefinierten Domain-API-Zuordnung zugeordnet ist.

Ähnliche Informationen

Wie behebe ich HTTP 403-Fehler aus API Gateway?

Wie behebe ich beim API Gateway REST-API-Endpunkt Fehler 403 „Missing Authentication Token“?

Einen regionalen benutzerdefinierten Domain-Namen in API Gateway einrichten