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.
Sie steuern den Zugriff auf Ihre Amazon API Gateway-API über IAM-Berechtigungen, indem Sie den Zugriff auf die folgenden zwei API Gateway-Komponentenprozesse steuern:
-
Um eine API in API Gateway zu erstellen, bereitzustellen und zu verwalten, müssen Sie dem API-Entwickler Berechtigungen zur Durchführung der erforderlichen Aktionen erteilen, die von der API-Verwaltungskomponente von API Gateway unterstützt werden.
-
Zum Aufrufen einer bereitgestellten API oder zum Aktualisieren der API-Zwischenspeicherung benötigt der API-Aufrufer die Berechtigungen für die erforderlichen IAM-Aktionen, die von der API-Ausführungskomponente von Amazon API Gateway unterstützt werden.
Die Zugriffskontrolle für die beiden Prozesse umfasst verschiedene Berechtigungsmodelle, die nachstehend erläutert werden.
API Gateway-Berechtigungsmodell für die Erstellung und Verwaltung einer API
Wenn Sie einem API-Entwickler ermöglichen möchten, eine API in Amazon API Gateway zu erstellen und zu verwalten, müssen Sie IAM-Berechtigungsrichtlinien erstellen, die zulassen, dass ein bestimmter API-Entwickler die erforderlichen API-Entitäten erstellen, aktualisieren, bereitstellen, ansehen oder löschen darf. Sie fügen die Richtlinie an einen Benutzer, eine Rolle oder eine Gruppe an.
Um Zugriff zu gewähren, fügen Sie Ihren Benutzern, Gruppen oder Rollen Berechtigungen hinzu:
-
Benutzer und Gruppen in AWS IAM Identity Center:
Erstellen Sie einen Berechtigungssatz. Befolgen Sie die Anweisungen unter Erstellen eines Berechtigungssatzes im AWS IAM Identity Center -Benutzerhandbuch.
-
Benutzer, die in IAM über einen Identitätsanbieter verwaltet werden:
Erstellen Sie eine Rolle für den Identitätsverbund. Befolgen Sie die Anleitung unter Eine Rolle für einen externen Identitätsanbieter (Verbund) erstellen im IAM-Benutzerhandbuch.
-
IAM-Benutzer:
-
Erstellen Sie eine Rolle, die Ihr Benutzer annehmen kann. Befolgen Sie die Anleitung unter Eine Rolle für einen IAM-Benutzer erstellen im IAM-Benutzerhandbuch.
-
(Nicht empfohlen) Weisen Sie einem Benutzer eine Richtlinie direkt zu oder fügen Sie einen Benutzer zu einer Benutzergruppe hinzu. Befolgen Sie die Anweisungen unter Hinzufügen von Berechtigungen zu einem Benutzer (Konsole) im IAM-Benutzerhandbuch.
-
Weitere Informationen dazu, wie Sie dieses Berechtigungsmodell verwenden, finden Sie unter Identitätsbasierte API-Gateway-Richtlinien.
API Gateway-Berechtigungsmodell für den Aufruf einer API
Wenn Sie zulassen möchten, dass ein API-Aufrufer die API aufruft oder deren Cache aktualisiert, müssen Sie IAM-Richtlinien erstellen, die einen bestimmten API-Aufrufer die API-Methode aufrufen lassen, für die die Benutzerauthentifizierung aktiviert ist. Der API-Entwickler legt authorizationType
als AWS_IAM
-Eigenschaft der Methode fest, damit der Aufrufer gezwungen ist, für die Authentifizierung die Anmeldeinformationen des Benutzers zu übermitteln. Anschließend verknüpfen Sie die Richtlinie mit einem Benutzer, einer Rolle oder einer Gruppe.
In dieser IAM-Berechtigungsrichtlinienanweisung enthält das IAM-Resource
-Element eine Liste mit bereitgestellten API-Methoden, die durch bestimmte HTTP-Verben und API Gateway-Ressourcenpfade identifiziert werden. Das IAM Action
-Element enthält die erforderliche API Gateway-API, die Aktionen ausführt. Zu diesen Aktionen gehören execute-api:Invoke
oder execute-api:InvalidateCache
, wobei execute-api
die zugrundeliegende API-Ausführungskomponente von API Gateway bezeichnet.
Weitere Informationen dazu, wie Sie dieses Berechtigungsmodell verwenden, finden Sie unter Kontrollieren des Zugriffs für den API-Aufruf.
Wenn eine API in einen AWS Dienst (z. B. AWS Lambda) im Backend integriert ist, muss API Gateway auch über Berechtigungen für den Zugriff auf integrierte AWS Ressourcen (z. B. das Aufrufen einer Lambda-Funktion) im Namen des API-Aufrufers verfügen. Um diese Berechtigungen zu erteilen, erstellen Sie eine IAM-Rolle vom Typ AWS -Service für API Gateway. Wenn Sie diese Rolle in der IAM-Managementkonsole erstellen, enthält sie die folgende IAM-Vertrauensrichtlinie. In dieser wird Amazon API Gateway als vertrauenswürdige Entity deklariert, der die Übernahme der Rolle gestattet ist:
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "apigateway.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Wenn Sie die IAM-Rolle durch Aufruf des Befehls create-role der CLI oder einer entsprechenden SDK-Methode erstellen, müssen Sie die oben beschriebene Vertrauensrichtlinie als Eingabeparameter von assume-role-policy-document
bereitstellen. Versuchen Sie nicht, eine solche Richtlinie direkt in der IAM-Managementkonsole zu erstellen oder den Befehl AWS CLI create-policy oder eine entsprechende SDK-Methode aufzurufen.
Damit API Gateway den integrierten AWS Dienst aufrufen kann, müssen Sie dieser Rolle auch entsprechende IAM-Berechtigungsrichtlinien für den Aufruf integrierter AWS Dienste zuordnen. Um beispielsweise eine Lambda-Funktion aufrufen zu können, müssen Sie die folgende IAM-Berechtigungsrichtlinie in die IAM-Rolle einfügen:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "lambda:InvokeFunction", "Resource": "*" } ] }
Lambda unterstützt ressourcenbasierte Zugriffsrichtlinien und kombiniert somit Vertrauens- und Berechtigungsrichtlinien. Bei der Integration einer API mit einer Lambda-Funktion über die API Gateway-Konsole werden Sie nicht aufgefordert, diese IAM-Rolle explizit festzulegen, da die Konsole die ressourcenbasierten Berechtigungen für die Lambda-Funktion mit Ihrer Zustimmung für Sie festlegt.
Anmerkung
Um die Zugriffskontrolle für einen AWS Dienst festzulegen, können Sie entweder das aufruferbasierte Berechtigungsmodell verwenden, bei dem eine Berechtigungsrichtlinie direkt an den Benutzer oder die Gruppe des Anrufers angehängt wird, oder das rollenbasierte Berechtigungsmodell, bei dem eine Berechtigungsrichtlinie an eine IAM-Rolle angehängt wird, die API Gateway übernehmen kann. Die Berechtigungsrichtlinien in den zwei Modellen können sich unterscheiden. Zum Beispiel kann die aufruferbasierte Richtlinie den Zugriff blockieren, während die rollenbasierte ihn zulässt. Sie können dies nutzen, um zu verlangen, dass ein Benutzer nur über eine API Gateway auf einen AWS Dienst zugreift.