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.
Kontrollieren des Zugriffs für den API-Aufruf
In diesem Abschnitt erfahren Sie, wie Sie IAM-Richtlinienanweisungen verfassen, um zu steuern, wer eine bereitgestellte API in API Gateway aufrufen kann. Sie finden hier auch die Richtlinienanweisungsreferenz, einschließlich der Formate für die Action
- und Resource
-Felder für den API-Ausführungsservice. Sie sollten außerdem den IAM-Abschnitt in So beeinflussen API Gateway-Ressourcenrichtlinien den Autorisierungs-Workflow lesen.
Für private APIs sollten Sie eine Kombination aus einer API Gateway-Ressourcenrichtlinie und einer VPC-Endpunktrichtlinie verwenden. Weitere Informationen finden Sie unter den folgenden Themen:
Mit IAM-Richtlinien steuern, wer eine API Gateway-API-Methode aufrufen kann
Um mit IAM-Berechtigungen zu steuern, wer eine bereitgestellte API aufrufen kann oder nicht, erstellen Sie ein IAM-Richtliniendokument mit den erforderlichen Berechtigungen. Eine Vorlage für ein solches Richtliniendokument sehen Sie im Folgenden.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "
Permission
", "Action": [ "execute-api:Execution-operation
" ], "Resource": [ "arn:aws:execute-api:region
:account-id
:api-id
/stage
/METHOD_HTTP_VERB
/Resource-path
" ] } ] }
Hier muss
durch Permission
Allow
oder Deny
ersetzt werden, abhängig davon, ob Sie die enthaltenen Berechtigungen erteilen oder entziehen möchten.
ist durch die vom API-Ausführungsdienst unterstützten Operationen zu ersetzen.Execution-operation
steht für ein HTTP-Verb, das von den angegebenen Ressourcen unterstützt wird. METHOD_HTTP_VERB
ist der Platzhalter für den URL-Pfad einer bereitgestellten API-Resource-path
Resource
-Instance, die das genannte
unterstützt. Weitere Informationen finden Sie unter Anweisungsreferenz für IAM-Richtlinien zur Ausführung der API in API Gateway. METHOD_HTTP_VERB
Anmerkung
Damit IAM-Richtlinien wirksam sind, müssen Sie die IAM-Authentifizierung bei API-Methoden aktiviert haben, indem Sie AWS_IAM
für die Eigenschaft authorizationType
der Methoden festlegen. Andernfalls werden diese API-Methoden öffentlich zugänglich gemacht.
Angenommen, Sie möchten einem Benutzer die Berechtigung erteilen, eine Liste mit Haustieren anzusehen, die von einer bestimmten API zur Verfügung gestellt wird. Der Benutzer darf der Liste aber kein Haustier hinzufügen. Für diesen Fall können Sie die folgende Anweisung in die IAM-Richtlinie einschließen:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:us-east-1:
account-id
:api-id
/*
/GET/pets
" ] }, { "Effect": "Deny", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:us-east-1:account-id
:api-id
/*
/POST/pets
" ] } ] }
Um einem Benutzer die Berechtigung zum Anzeigen eines bestimmten Haustiers zu erteilen, das von einer API zur Verfügung gestellt wird, die als GET /pets/
konfiguriert ist, können Sie die folgende Anweisung in die IAM-Richtlinie einschließen:{petId}
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "execute-api:Invoke" ], "Resource": [ "arn:aws:execute-api:us-east-1:
account-id
:api-id
/*/GET/pets
/a1b2
" ] } ] }
Anweisungsreferenz für IAM-Richtlinien zur Ausführung der API in API Gateway
Im Folgenden werden die "Action"- und "Resource"-Formate von IAM-Richtlinienanweisungen für Zugriffsberechtigungen zur Ausführung einer API beschrieben.
Aktionsformat für Berechtigungen zur Ausführung der API in API Gateway
Der Action
-Ausdruck zur API-Ausführung weist das folgende allgemeine Format auf:
execute-api:
action
Wobei action
eine verfügbare API-Ausführungsaktion ist:
-
*, repräsentiert alle der folgenden Aktionen.
-
Invoke – wird verwendet, um eine API für eine Client-Anforderung aufzurufen.
-
InvalidateCache – wird verwendet, um den API-Cache für eine Client-Anforderung ungültig zu machen.
Ressourcenformat für Berechtigungen zur Ausführung der API in API Gateway
Der Resource
-Ausdruck zur API-Ausführung weist das folgende allgemeine Format auf:
arn:aws:execute-api:
region
:account-id:api-id
/stage-name
/HTTP-VERB
/resource-path-specifier
Wobei:
-
region
die AWS-Region ist (z. B.us-east-1
oder*
für alle AWS-Regionen), die der bereitgestellten API für die Methode entspricht. -
account-id
die 12-stellige AWS-Konto-ID des REST-API-Eigentümers ist. -
api-id
ist die ID, die API Gateway der API für die Methode zugewiesen hat. -
stage-name
ist der Name der Stufe, die mit der Methode verknüpft ist. -
HTTP-VERB
das HTTP-Verb für die Methode ist. Es kann eines der folgenden Verben sein: GET, POST, PUT, DELETE, PATCH. -
resource-path-specifier
ist der Pfad für die gewünschte Methode.
Anmerkung
Wenn Sie einen Platzhalter (*
) angeben, wendet der Resource
-Ausdruck den Platzhalter auf den Rest des Ausdrucks an.
Hier einige Ressourcenausdrücke als Beispiel:
-
arn:aws:execute-api:*:*:*
für jeden Ressourcenpfad in allen Stufen, für jede API in sämtlichen AWS-Regionen. -
arn:aws:execute-api:us-east-1:*:*
für jeden Ressourcenpfad in allen Stufen, für jede API in AWSus-east-1
-Regionen. -
arn:aws:execute-api:us-east-1:*:
für jeden Ressourcenpfad in allen Stufen, für die API mit dem Bezeichnerapi-id
/*api-id
in der AWS-Region „us-east-1“. -
arn:aws:execute-api:us-east-1:*:
für einen Ressourcenpfad in der Stufeapi-id
/test
/*test
, für die API mit dem Bezeichnerapi-id
in der AWS-Region „us-east-1“.
Weitere Informationen hierzu finden Sie unter Referenz zu API Gateway Amazon-Ressourcenname (ARN).