Ein Entwickler debuggt eine Anwendung, die mehrere Lambda-Funktionen verwendet, welche eine von API Gateway bereitgestellte API aufrufen. Die API Gateway-Methode verwendet einen Amazon Cognito Authorizer. Die Lambda-Funktionen fügen die Benutzer-ID in den Authorization-Header ein, wenn sie die API aufrufen. Alle GET-Anfragen an die API geben HTTP 403 zurück. Wie kann der Entwickler dies beheben?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Ändern Sie die Client-GET-Anfrage so, dass sie ein gültiges Cognito-Authentifizierungstoken im Authorization-Header enthält..
Warum dies die Antwort ist
Da die API Gateway-Methode einen Amazon Cognito Authorizer verwendet, erwartet sie ein gültiges Cognito-Authentifizierungstoken im Authorization-Header, um die Identität des Aufrufers zu überprüfen. Die Lambda-Funktionen senden jedoch die Benutzer-ID, was nicht dem erwarteten Format eines Cognito-Tokens entspricht und zur Ablehnung mit HTTP 403 (Forbidden) führt. Das Senden eines gültigen Cognito-Authentifizierungstokens ermöglicht die erfolgreiche Autorisierung. Ein API-Schlüssel ist für die Authentifizierung bei einem Cognito Authorizer nicht ausreichend. Die Aktualisierung der API Gateway-Ressourcenrichtlinie ist nicht die Lösung, da der 403-Fehler auf fehlende Autorisierung durch den Cognito Authorizer hinweist, nicht auf eine fehlende Berechtigung auf Ressourcenebene. Eine OPTIONS-Preflight-Anfrage ist relevant für CORS, aber nicht für die Behebung eines 403-Fehlers, der durch einen fehlenden oder ungültigen Authentifizierungs-Header verursacht wird.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich