Verwenden Sie Stufenvariablen für HTTP APIs in Gateway API - APIAmazon-Gateway

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden Sie Stufenvariablen für HTTP APIs in Gateway API

Stufenvariablen sind Schlüssel-Wert-Paare, die Sie für eine Phase eines definieren können. HTTP API Sie verhalten sich wie Umgebungsvariablen und können in Ihrem API Setup verwendet werden.

Stage-Variablen sind nicht dazu gedacht, für sensible Daten wie Anmeldeinformationen verwendet zu werden. Verwenden Sie einen AWS Lambda Autorisierer, um sensible Daten an Integrationen weiterzugeben. Sie können sensible Daten an Integrationen in der Ausgabe des Lambda-Genehmigers übergeben. Weitere Informationen hierzu finden Sie unter Antwortformat des Lambda-Genehmigers.

Beispiel — Verwenden Sie eine Stufenvariable, um den Integrationsendpunkt HTTP anzupassen

Sie können beispielsweise eine Stufenvariable definieren und dann ihren Wert als HTTP Endpunkt für eine HTTP Proxyintegration festlegen. Später können Sie den Endpunkt mithilfe des zugeordneten Stufenvariablennamens referenzieren. Auf diese Weise können Sie in jeder Phase dasselbe API Setup mit einem anderen Endpunkt verwenden. In ähnlicher Weise können Sie Stufenvariablen verwenden, um für jede Phase Ihrer eine andere AWS Lambda Funktionsintegration anzugebenAPI.

Um eine Stufenvariable zum Anpassen des HTTP Integrationsendpunkts zu verwenden, müssen Sie zuerst den Namen und den Wert der Stufenvariablen (z. B.url) mit dem Wert von festlegenexample.com. Als Nächstes richten Sie eine HTTP Proxyintegration ein. Anstatt den Endpunkt einzugebenURL, können Sie API Gateway anweisen, den Wert der Stage-Variablen, zu verwendenhttp://${stageVariables.url}. Dieser Wert weist API Gateway an, Ihre Stufenvariable zur ${} Laufzeit zu ersetzen, je nachdem, in welcher Phase Sie sich befindenAPI.

Sie können auf ähnliche Weise auf Stufenvariablen verweisen, um einen Lambda-Funktionsnamen oder eine AWS Rolle ARN anzugeben.

Wenn Sie einen Lambda-Funktionsnamen als Stufenvariablenwert angeben, müssen Sie die Berechtigungen für die Lambda-Funktion manuell konfigurieren. Sie können dazu den folgenden AWS CLI Befehl verwenden.

aws lambda add-permission --function-name arn:aws:lambda:XXXXXX:your-lambda-function-name --source-arn arn:aws:execute-api:us-east-1:YOUR_ACCOUNT_ID:api_id/*/HTTP_METHOD/resource --principal apigateway.amazonaws.com --statement-id apigateway-access --action lambda:InvokeFunction