APIBeispiele für Gateway-Ressourcenrichtlinien - 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.

APIBeispiele für Gateway-Ressourcenrichtlinien

Auf dieser Seite finden Sie einige Beispiele für typische Anwendungsfälle für API Gateway-Ressourcenrichtlinien.

Die folgenden Beispielrichtlinien verwenden eine vereinfachte Syntax zur Angabe der API Ressource. Diese vereinfachte Syntax ist eine abgekürzte Methode, mit der Sie auf eine API Ressource verweisen können, anstatt den vollständigen Amazon-Ressourcennamen (ARN) anzugeben. APIGateway konvertiert die abgekürzte Syntax in die vollständige SyntaxARN, wenn Sie die Richtlinie speichern. Sie können zum Beispiel die Ressource execute-api:/stage-name/GET/pets in einer Ressourcenrichtlinie angeben. APIGateway konvertiert die Ressource in den arn:aws:execute-api:us-east-2:123456789012:aabbccddee/stage-name/GET/pets Zeitpunkt, zu dem Sie die Ressourcenrichtlinie speichern. APIGateway erstellt die vollständige Version, ARN indem es die aktuelle Region, Ihre AWS Konto-ID und die ID der Region verwendet RESTAPI, der die Ressourcenrichtlinie zugeordnet ist. Sie können execute-api:/* damit alle Phasen, Methoden und Pfade in der aktuellen Version darstellenAPI. Informationen zur Sprache der Zugriffsichtlinie finden Sie unter Sprachübersicht der Zugriffsrichtlinien für Amazon API Gateway.

Beispiel: Erlauben Sie Rollen in einem anderen AWS Konto die Verwendung eines API

Das folgende Beispiel für eine AWS Ressourcenrichtlinie gewährt über Signature Version 4 (Sigv4) -Protokolle API Zugriff auf zwei Rollen in einem anderen AWS Konto. Insbesondere wird der Entwickler- und der Administratorrolle für das durch account-id-2 identifizierte AWS Konto die execute-api:Invoke Aktion zur Ausführung der GET Aktion für die pets Ressource (API) in Ihrem AWS Konto gewährt.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::account-id-2:role/developer", "arn:aws:iam::account-id-2:role/Admin" ] }, "Action": "execute-api:Invoke", "Resource": [ "execute-api:/stage/GET/pets" ] } ] }

Beispiel: Verweigern Sie API den Datenverkehr anhand der Quell-IP-Adresse oder des Quellbereichs

Das folgende Beispiel für eine Ressourcenrichtlinie verweigert (blockiert) eingehenden Datenverkehr zu einem API von zwei angegebenen Quell-IP-Adressblöcken.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ] }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ], "Condition" : { "IpAddress": { "aws:SourceIp": ["192.0.2.0/24", "198.51.100.0/24" ] } } } ] }

Beispiel: Bei Verwendung einer privaten IP-Adresse oder eines Bereichs den API Datenverkehr auf der Grundlage der Quell-IP-Adresse oder des Quellbereichs verweigern API

Das folgende Beispiel für eine Ressourcenrichtlinie verweigert (blockiert) eingehenden Datenverkehr API von zwei angegebenen Quell-IP-Adressblöcken an eine private Adresse. Bei Verwendung von Private APIs execute-api schreibt der VPC Endpunkt für die ursprüngliche Quell-IP-Adresse neu. Die aws:VpcSourceIp-Bedingung filtert die Anforderung anhand der ursprünglichen IP-Adresse des Anforderers.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ] }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ], "Condition" : { "IpAddress": { "aws:VpcSourceIp": ["192.0.2.0/24", "198.51.100.0/24"] } } } ] }

Beispiel: Lassen Sie privaten API Datenverkehr auf der Grundlage der Quelle VPC oder VPC des Endpunkts zu

Das folgende Beispiel für Ressourcenrichtlinien erlaubt eingehenden Datenverkehr zu einer privaten Cloud API nur von einer bestimmten virtuellen privaten Cloud (VPC) oder einem bestimmten VPC Endpunkt aus.

In dieser Beispiel-Ressourcenrichtlinie wird eine Quelle angegebenVPC:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ] }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ], "Condition" : { "StringNotEquals": { "aws:SourceVpc": "vpc-1a2b3c4d" } } } ] }

Diese Beispiel-Ressourcenrichtlinie spezifiziert einen VPC Quellendpunkt:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ] }, { "Effect": "Deny", "Principal": "*", "Action": "execute-api:Invoke", "Resource": [ "execute-api:/*" ], "Condition" : { "StringNotEquals": { "aws:SourceVpce": "vpce-1a2b3c4d" } } } ] }