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.
Beispiele für API Gateway-Ressourcenrichtlinien
Auf dieser Seite werden einige Beispiele zu typischen Anwendungsfällen für API Gateway Ressourcenrichtlinien vorgestellt.
In den folgenden Beispielrichtlinien wird eine vereinfachte Syntax verwendet, um die API-Ressource anzugeben. Diese vereinfachte Syntax ist eine abgekürzte Form, mit der Sie auf eine API-Ressource verweisen können, anstatt den vollständigen Amazon-Ressourcenname (ARN) anzugeben. API Gateway konvertiert die abgekürzte Syntax in den vollständigen ARN, wenn Sie die Richtlinie speichern. Sie können zum Beispiel die Ressource execute-api:/
in einer Ressourcenrichtlinie angeben. API Gateway wandelt die Ressource in stage-name
/GET
/pets
arn:aws:execute-api:us-east-2:123456789012:aabbccddee/stage-name/GET/pets
um, wenn Sie die Ressourcenrichtlinie speichern. API Gateway erstellt den vollständigen ARN unter Verwendung der aktuellen Region, Ihrer AWS Konto-ID und der ID der REST-API, der die Ressourcenrichtlinie zugeordnet ist. Sie können mit execute-api:/*
alle Phasen, Methoden und Pfade in der aktuellen API darstellen. Informationen zur Sprache der Zugriffsichtlinie finden Sie unter Übersicht über die Zugriffsrichtliniensprache für Amazon API Gateway.
Themen
- Beispiel: Zulassen, dass Rollen in einem anderen AWS Konto eine API verwenden
- Beispiel: Verweigern des API-Datenverkehrs basierend auf der Quell-IP-Adresse oder eines IP-Bereichs
- Beispiel: Verweigern des API-Datenverkehrs basierend auf der Quell-IP-Adresse oder eines IP-Bereichs bei Verwendung einer privaten API
- Beispiel: Erlauben von privatem API-Datenverkehr basierend auf der Quell-VPC oder dem VPC-Endpunkt
Beispiel: Zulassen, dass Rollen in einem anderen AWS Konto eine API verwenden
Die folgende Beispiel-Ressourcenrichtlinie gewährt zwei Rollen in einem anderen AWS Konto über Signature Version 4 (SigV4)-Protokolle API-Zugriff in einem AWS Konto. Insbesondere dem Entwickler und der Administratorrolle für das durch identifizierte AWS Konto
wird die account-id-2
execute-api:Invoke
Aktion zum Ausführen der GET
Aktion auf der 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 des API-Datenverkehrs basierend auf der Quell-IP-Adresse oder eines IP-Bereichs
Die folgende Beispiel-Ressourcenrichtlinie verweigert (blockiert) den eingehenden Datenverkehr zu einer API, wenn dieser von zwei bestimmten Quell-IP-Adressblöcken stammt.
{ "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: Verweigern des API-Datenverkehrs basierend auf der Quell-IP-Adresse oder eines IP-Bereichs bei Verwendung einer privaten API
Die folgende Beispiel-Ressourcenrichtlinie verweigert (blockiert) den eingehenden Datenverkehr zu einer privaten API, wenn dieser von zwei bestimmten Quell-IP-Adressblöcken stammt. Bei Verwendung privater APIs schreibt der VPC-Endpunkt für execute-api
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: Erlauben von privatem API-Datenverkehr basierend auf der Quell-VPC oder dem VPC-Endpunkt
Die folgenden Beispiel-Ressourcenrichtlinien erlauben eingehenden Datenverkehr zu einer privaten API von nur einer bestimmten Virtual Private Cloud (VPC) oder einem bestimmten VPC-Endpunkt.
In diesem Beispiel für eine Ressourcenrichtlinie wird eine Quell-VPC angegeben:
{ "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
" } } } ] }
In diesem Beispiel für eine Ressourcenrichtlinie wird ein Quell-VPC-Endpunkt angegeben:
{ "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
" } } } ] }