Konfigurieren von Rollenberechtigungen für Lambda-Ausführungen - AWS Lambda

Konfigurieren von Rollenberechtigungen für Lambda-Ausführungen

Neben dem Zugriff auf Ihren selbstverwalteten Kafka-Cluster benötigt Ihre Lambda-Funktion auch Berechtigungen, um verschiedene API-Aktionen auszuführen. Sie fügen diese Berechtigungen zur Ausführungsrolle der Funktion hinzu. Wenn Ihre Benutzer Zugriff auf API-Aktionen benötigen, fügen Sie die erforderlichen Berechtigungen zur Identitätsrichtlinie für den AWS Identity and Access Management(IAM)-Benutzer oder die IAM-Rolle hinzu.

Benötigte Lambda-Funktionsberechtigungen

Um Protokolle in einer Protokollgruppe in Amazon CloudWatch Logs zu erstellen und zu speichern, muss Ihre Lambda-Funktion die folgenden Berechtigungen in ihrer Ausführungsrolle haben:

Optionale Lambda-Funktionsberechtigungen

Ihre Lambda-Funktion benötigt möglicherweise auch Berechtigungen für Folgendes:

  • Beschreiben Ihres Secrets-Manager-Secrets

  • Zugriff auf Ihre AWS Key Management Service (AWS KMS) vom Kunden verwalteten Schlüssel

  • Zugriff auf Ihre Amazon VPC

  • Senden von Datensätzen zu fehlgeschlagenen Aufrufen an ein Ziel

Secrets Manager und AWS KMS-Berechtigungen

Abhängig von der Art der Zugriffssteuerung, die Sie für Ihre Kafka-Broker konfigurieren, benötigt Ihre Lambda-Funktion möglicherweise die Berechtigung, auf Ihr Secrets-Manager-Secret zuzugreifen oder Ihren vom Kunden verwalteten AWS KMS-Schlüssel zu entschlüsseln. Um auf diese Ressourcen zuzugreifen, muss die Ausführungsrolle Ihrer Funktion die folgenden Berechtigungen besitzen:

VPC-Berechtigungen

Wenn nur Benutzer innerhalb einer VPC auf Ihren selbstverwalteten Apache-Kafka-Cluster zugreifen können, muss Ihre Lambda-Funktion die Berechtigung zum Zugriff auf Ihre Amazon-VPC-Ressourcen haben. Zu diesen Ressourcen gehören Ihre VPC, Subnetze, Sicherheitsgruppen und Netzwerkschnittstellen. Um auf diese Ressourcen zuzugreifen, muss die Ausführungsrolle Ihrer Funktion die folgenden Berechtigungen besitzen:

Hinzufügen von Berechtigungen zu Ihrer Ausführungsrolle

Um auf andere AWS-Services zuzugreifen, die Ihr selbstverwaltetes Apache-Kafka-Cluster verwendet, verwendet Lambda die Berechtigungsrichtlinien, die Sie in der Ausführungsrolle Ihrer Lambda-Funktion definieren.

Standardmäßig ist es Lambda nicht gestattet, die erforderlichen oder optionalen Aktionen für einen selbstverwalteten Apache-Kafka-Cluster durchzuführen. Sie müssen diese Aktionen in einer IAM-Vertrauensrichtlinie für Ihre Ausführungsrolle erstellen und definieren. In diesem Beispiel wird gezeigt, wie Sie eine Richtlinie erstellen können, die Lambda den Zugriff auf Ihre Amazon-VPC-Ressourcen erlaubt.

JSON
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Action":[ "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups" ], "Resource":"*" } ] }

Gewähren von Benutzerzugriff mit einer IAM-Richtlinie

Standardmäßig haben Benutzer und Rollen keine Berechtigung zum Ausführen von Ereignisquellen-API-Vorgängen. Um Benutzern in Ihrem Unternehmen oder Ihrem Konto Zugriff zu gewähren, erstellen oder aktualisieren Sie eine identitätsbasierte Richtlinie. Weitere Informationen finden Sie unter Steuern des Zugriffs auf AWS-Ressourcen mithilfe von Richtlinien im IAM-Benutzerhandbuch.

Informationen zur Behebung von Authentifizierungs- und Autorisierungsfehlern finden Sie unter Fehlerbehebung bei der Kafka-Zuordnung von Ereignisquellen.