Wie behebe ich Fehler vom Typ 403 „Fehlendes Authentifizierungstoken“ am REST-API-Endpunkt von API-Gateway?

Lesedauer: 3 Minute
0

Wenn ich versuche, meine REST-API des Amazon API Gateway aufzurufen, erhalte ich die 403-Fehlermeldung „Fehlendes Authentifizierungstoken“.

Kurzbeschreibung

REST-API-Endpunkte von API Gateway geben aus folgenden Gründen Fehler vom Typ Fehlendes Authentifizierungstoken zurück:

Informationen zur Behebung anderer 403-Fehler für API Gateway finden Sie unter Wie behebe ich HTTP-403-Fehler von API Gateway?

Lösung

Stellen Sie sicher, dass der Ressourcenpfad von API-Gateway einen konfigurierten Vorgang und eine konfigurierte Ressource enthält

Folgen Sie den Anweisungen unter Einrichten eines Vorgangs über die Konsole von API Gateway. Weitere Informationen finden Sie unter Einrichten von API-Ressourcen.

**Wichtig:**Damit die Änderungen wirksam werden, müssen Sie die API bereitstellen.

Stellen Sie bei APIs mit Proxy-Ressourcenintegration, wo der Anforderungsvorgang an die Root-Ressource gesendet wird, sicher, ob ein Vorgang unter der Root-Ressource konfiguriert ist.

Stellen Sie sicher, dass die Antworten von API Gateway nicht geändert wurden oder dass die Backend-Integration die Antwort nicht sendet

Stellen Sie sicher, dass die Gateway-Antworten in der API nicht geändert werden. Stellen Sie darüber hinaus sicher, dass der Fehler nicht vom Backend der Integration stammt. Überprüfen Sie die Ausführungs- und Backend-Protokolle von API Gateway.

Vergewissern Sie sich, dass die API-Anfrage signiert ist, wenn die IAM-Authentifizierung aktiviert ist

Weitere Informationen finden Sie unter Signieren von AWS API-Anfragen und Elemente einer AWS API-Anforderungssignatur.

Vergewissern Sie sich, dass Sie die richtige HTTP-Vorgangsanforderung an den REST-API-Endpunkt senden

Testen Sie einen REST-API-Endpunkt von einem Webbrowser aus, um automatisch eine GET-HTTP-Vorgangsanforderung zu senden.

Verwenden Sie einen anderen HTTP-Client, um eine POST-HTTP-Vorgangsanforderung zu testen. Verwenden Sie beispielsweise Postman auf der Postman-Website oder curl auf der Curl-Website.

Beispiel für einen Curl-Befehl, der die POST-HTTP-Methodenanforderung verwendet

$ curl -X POST  <API URL> -d <request body>

Beispiel für das Senden einer Anfrage mit JSON-Kopfzeile

$ curl --location -X POST 'https://1234WXYZ.execute-api.us-east-1.amazonaws.com/stage/lambda_proxy' --header 'Content-Type: application/json' --data-raw '{"x":"y"}'

Beispiele für das Senden einer Curl-POST-Anfrage mit AWS V4-Signaturauthentifizierung

$ curl -X POST "<ENDPOINT>" -d <data> --user <AWS_ACCESS_KEY>:<AWS_SECRET_KEY> --aws-sigv4 "aws:amz:<REGION>:<SERVICE>"
$ curl -X POST "https://1234WXYZ.execute-api.us-east-1.amazonaws.com/stage/lambda_proxy" -d '{"x":"y"}' --user ABCD:1234 --aws-sigv4 "aws:amz:us-east-1:execute-api"

Ähnliche Informationen

Wie aktiviere ich die IAM-Authentifizierung für REST-APIs in API Gateway?