Direkt zum Inhalt

Was ist der Unterschied zwischen Rollenberechtigungen zur Ausführung von Lambda-Funktionen und Aufrufberechtigungen?

Lesedauer: 3 Minute
0

Ich möchte die Unterschiede zwischen Rollenberechtigungen zur Ausführung von AWS Lambda-Funktionen und Aufrufberechtigungen verstehen. Ich möchte auch wissen, wie sich die beiden Arten von AWS Identity and Access Management (IAM, Identitäts- und Zugriffsmanagement)-Berechtigungen für Lambda unterscheiden.

Behebung

Wichtig: Wenn du IAM-Richtlinien erstellst, empfiehlt es sich, nur die für die Ausführung einer bestimmten Aufgabe erforderlichen Berechtigungen zu gewähren

Rollenberechtigungen für die Ausführung von Lambda-Funktionen

Berechtigungen für Lambda-Ausführungsrollen sind IAM-Berechtigungen, die eine Lambda-Funktionsberechtigung für den Zugriff auf bestimmte AWS-Services und -Ressourcen gewähren. Wenn du der Funktionsausführungsrolle keine Berechtigungen für einen Service oder eine Ressource gewährst, kann die Funktion nicht auf den Service oder die Ressource zugreifen.

Berechtigungen für Ausführungsrollen gewähren

Um Berechtigungen für die Lambda-Ausführungsrolle zu gewähren, liste serivcespezifische API-Aktionen wie s3:GetObject oder sns:Publish im Element Aktion einer IAM-Richtlinien-Anweisung auf. Füge anschließend die Richtlinie an eine IAM-Ausführungsrolle an, die die Lambda-Funktion übernimmt, wenn sie aufgerufen wird.

Für Services, die eine Warteschlange oder einen Datenstrom generieren, musst du eine Zuordnung von Ereignisquellen konfigurieren, damit Lambda die Warteschlange oder den Datenstrom abfragt. Eine Zuordnung von Ereignisquellen verwendet Berechtigungen in der Ausführungsrolle der Funktion, um Elemente in der Ereignisquelle zu lesen und zu verwalten.

Hinweis: Berechtigungen, Ereignisstrukturen, Einstellungen und Abfrageverhalten variieren je nach Ereignisquelle. Ein Beispiel für eine IAM-Richtlinie, die Lambda-Abfrageberechtigungen beinhaltet, findest du unter IAM-Richtlinie, um einer AWS Lambda-Funktion den Zugriff auf Amazon DynamoDB-Strom-Datensätze zu ermöglichen.

Berechtigungen zum Aufrufen von Lambda-Funktionen

Berechtigungen zum Aufrufen von Lambda-Funktionen sind IAM-Berechtigungen, die einem bestimmten Service oder einer bestimmten Ressource die Berechtigung zum Aufrufen einer Lambda-Funktion gewähren. Wenn du einem Service oder einer Ressource keine Berechtigung zum Aufrufen für deine Lambda-Funktion gewährst, kann der Service oder die Ressource die Funktion nicht aufrufen.

Wichtig: Du musst Services, die Ereignisquellen an die Lambda-Funktion mithilfe von Push übertragen, Aufrufberechtigungen gewähren. Verwende beispielsweise die ressourcenbasierte Richtlinie der Funktion, um Amazon API Gateway die Berechtigung zum Aufrufen einer Lambda-Funktion zu erteilen.

Aufrufberechtigungen gewähren

Um Lambda-Aufrufberechtigungen zu gewähren, liste die API-Aktion lambda:InvokeFunction im Element Action einer ressourcenbasierten IAM-Richtlinienanweisung einer Lambda-Funktion auf. Du konfigurierst die ressourcenbasierte Richtlinie der Lambda-Funktion getrennt von der Ausführungsrolle der Funktion.

Hinweis: In diesem Fall unterscheidet sich die Aktionskennung lambda:InvokeFunction von der Aufruf-API-Operation. Bei anderen Aktionen ist die Aktionskennung der Operationsname mit dem Präfix lambda:.

Wenn du die Lambda-Konsole verwendest, um der Funktion einen Auslöser hinzuzufügen, werden die erforderlichen Aufrufberechtigungen automatisch zur ressourcenbasierten Richtlinie der Funktion hinzugefügt. Um AWS-Konten oder -Services, die in der Konsole nicht verfügbar sind, Berechtigungen zu gewähren, musst du die Lambda-API-Aktion AddPermission verwenden.

Weitere Informationen findest du unter Der Lambda-Funktion Zugriff auf AWS-Services gewähren.

Ähnliche Informationen

Verwaltung von Berechtigungen in AWS Lambda

Arbeiten mit von AWS verwalteten Richtlinien in der Ausführungsrolle

AWS OFFICIALAktualisiert vor einem Jahr