Ich habe eine API-Gateway, die von einem Front-End-Javascript-Anwendung zugegriffen wird. In diesem Sinne können wir den Zugriff auf einen API-Schlüssel nicht einschränken (ich glaube nicht?), Also würde ich ihn gerne auf die IP-Adresse beschränken ... aber ich kann keinen Weg finden, dies zu tun . Ist das überhaupt möglich, da es nicht von einem Server kommt?Begrenzen der öffentlichen API Gateway zu bestimmten IP
So ist die Website auf S3 mit Cloudfront in Front gehostet. Das API-Gateway akzeptiert einige Schlüssel und das trifft ein Lambda-Skript und wird in dynamodb gespeichert. Wenn jemand wollte, könnten sie einfach mit Werten aufspotten. Ich möchte nur, dass die Web-App in der Lage ist, mit ihr zu sprechen. Ich lerne immer noch viel AWS! Ich hoffte, ich könnte Shield oder WAF benutzen, aber es scheint ein Nein zu sein. Irgendwelche Vorschläge?
Außerhalb der Box. Ich mag das. –
Danke dafür. Ich bin mir nicht sicher, ob dies oder irgendeine Lösung in diesem Setup funktionieren würde. Da die Anwendung Frontend ist, ist die Server-IP niemals zum Senden verfügbar, glaube ich nicht? –
Da Ihre Front-End-App statisch ist, werden die clientseitigen Skripts auf Ihrem lokalen Computer ausgeführt. Daher lautet die IP-Adresse in diesem Zusammenhang * IHRE * IP, nicht S3/CloudFront. Falls Sie an Ihrem Standort keine statische IP-Adresse haben, können Sie die signierte URL speichern und Ihre App so konfigurieren, dass sie sie als Parameter akzeptiert, um die API-Schlüsseldatei abzurufen. Ich hoffe, der Ansatz ist jetzt klar. –