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.
Konfiguration von Lambda-Berechtigungen für Amazon MSK-Ereignisquellenzuordnungen
Um auf den Amazon-MSK-Cluster zugreifen zu können, benötigen Ihre Funktion und Zuordnung von Ereignisquellen Berechtigungen zum Ausführen verschiedener Amazon-MSK-API-Aktionen. Fügen Sie diese Berechtigungen zur Ausführungsrolle der Funktion hinzu. Wenn Ihre Benutzer Zugriff benötigen, fügen Sie die erforderlichen Berechtigungen zur Identitätsrichtlinie für Benutzer oder Rolle hinzu.
Die Richtlinie „AWSLambdaMSKExecutionRollenverwaltung“ enthält die erforderlichen Mindestberechtigungen für Amazon MSK Lambda-Ereignisquellenzuordnungen. Um den Genehmigungsprozess zu vereinfachen, können Sie:
-
Fügen Sie Ihrer AWSLambdaMSKExecutionAusführungsrolle die Richtlinie „Rollenverwaltete Verwaltung“ hinzu.
-
Lassen Sie die Lambda-Konsole die Berechtigungen für Sie generieren. Wenn Sie eine Amazon MSK-Ereignisquellenzuordnung in der Konsole erstellen, bewertet Lambda Ihre Ausführungsrolle und warnt Sie, wenn Berechtigungen fehlen. Wählen Sie Berechtigungen generieren, um Ihre Ausführungsrolle automatisch zu aktualisieren. Dies funktioniert nicht, wenn Sie Ihre Richtlinien für Ausführungsrollen manuell erstellt oder geändert haben oder wenn die Richtlinien mehreren Rollen zugeordnet sind. Beachten Sie, dass für Ihre Ausführungsrolle möglicherweise weiterhin zusätzliche Berechtigungen erforderlich sind, wenn Sie erweiterte Funktionen wie On-Failure Destination oder AWS Glue Schema Registry verwenden.
Erforderliche Berechtigungen
Ihre Lambda-Funktionsausführungsrolle muss über die folgenden erforderlichen Berechtigungen für Amazon MSK-Ereignisquellenzuordnungen verfügen. Diese Berechtigungen sind in der Richtlinie „Rollenverwaltung“ enthalten. AWSLambda MSKExecution
CloudWatch Protokolliert Berechtigungen
Die folgenden Berechtigungen ermöglichen es Lambda, Protokolle in Amazon CloudWatch Logs zu erstellen und zu speichern.
MSK-Cluster-Berechtigungen
Die folgenden Berechtigungen ermöglichen Lambda, in Ihrem Namen auf Ihren Amazon MSK-Cluster zuzugreifen:
Wir empfehlen die Verwendung von kafka: DescribeCluster V2 anstelle von kafka:. DescribeCluster Die v2-Berechtigung funktioniert sowohl mit bereitgestellten als auch mit serverlosen Amazon MSK-Clustern. In Ihrer Richtlinie benötigen Sie nur eine dieser Berechtigungen.
VPC-Berechtigungen
Die folgenden Berechtigungen ermöglichen es Lambda, Netzwerkschnittstellen zu erstellen und zu verwalten, wenn eine Verbindung zu Ihrem Amazon MSK-Cluster hergestellt wird:
Optionale Berechtigungen
Ihre Lambda-Funktion benötigt möglicherweise auch Berechtigungen für Folgendes:
-
Greifen Sie auf kontenübergreifende Amazon MSK-Cluster zu. Für kontenübergreifende Zuordnungen von Ereignisquellen benötigen Sie kafka: in der Ausführungsrolle. DescribeVpcConnection Ein IAM-Prinzipal, der eine kontenübergreifende Zuordnung von Ereignisquellen erstellt, benötigt kafka:. ListVpcConnections
-
Greifen Sie auf Ihr SCRAM-Secret zu, wenn Sie die SASL/SCRAM-Authentifizierung verwenden. Dadurch kann Ihre Funktion einen Benutzernamen und ein Passwort verwenden, um eine Verbindung zu Kafka herzustellen.
-
Beschreiben Sie Ihr Secrets Manager-Geheimnis, falls Sie die SASL/SCRAM mTLS-Authentifizierung verwenden. Dadurch kann Ihre Funktion die für sichere Verbindungen erforderlichen Anmeldeinformationen oder Zertifikate abrufen.
-
Greifen Sie auf Ihren vom AWS KMS Kunden verwalteten Schlüssel zu, wenn Ihr AWS Secrets Manager Geheimnis mit einem vom AWS KMS Kunden verwalteten Schlüssel verschlüsselt ist.
-
Greifen Sie auf Ihre Schemaregistrierungs-Secrets zu, wenn Sie eine Schemaregistrierung mit Authentifizierung verwenden:
-
Für AWS Glue Schema Registry: Ihre Funktionsanforderungen
glue:GetRegistryundglue:GetSchemaVersionBerechtigungen. Dadurch kann Ihre Funktion die in AWS Glue gespeicherten Nachrichtenformatregeln nachschlagen und verwenden. -
Für Confluent Schema Registry
mit BASIC_AUTHoderCLIENT_CERTIFICATE_TLS_AUTH: Ihre Funktion benötigt die Berechtigungsecretsmanager:GetSecretValuefür das Secret, das die Authentifizierungsdaten enthält. Auf diese Weise kann Ihre Funktion die Oder-Zertifikate abrufen, die username/password für den Zugriff auf die Confluent Schema Registry erforderlich sind. -
Für private CA-Zertifikate: Ihre Funktion benötigt die GetSecretValue Berechtigung secretsmanager: für das Secret, das das Zertifikat enthält. Dadurch kann Ihre Funktion die Identität von Schemaregistrierungen überprüfen, die benutzerdefinierte Zertifikate verwenden.
-
-
Greifen Sie auf Kafka-Cluster-Nutzergruppen und Abfragemeldungen aus dem Thema zu, wenn Sie die IAM-Authentifizierung für die Zuordnung der Ereignisquellen verwenden.
Diese entsprechen den folgenden erforderlichen Berechtigungen:
-
kafka: ListScramSecrets — Ermöglicht die Auflistung von SCRAM-Geheimnissen für die Kafka-Authentifizierung
-
secretsmanager: GetSecretValue - Ermöglicht das Abrufen von Geheimnissen aus Secrets Manager
-
kms:Decrypt — Ermöglicht die Entschlüsselung verschlüsselter Daten mit AWS KMS
-
glue: GetRegistry - Ermöglicht den Zugriff auf die Schemaregistrierung AWS Glue
-
glue: GetSchemaVersion - Ermöglicht das Abrufen bestimmter Schemaversionen aus der AWS Glue Schemaregistry
-
kafka-cluster:Connect — Erteilt die Erlaubnis, eine Verbindung zum Cluster herzustellen und sich dort zu authentifizieren
-
kafka-cluster: AlterGroup - Erteilt die Erlaubnis, Gruppen in einem Cluster beizutreten, was der READ GROUP-ACL von Apache Kafka entspricht
-
kafka-cluster: DescribeGroup - Erteilt die Erlaubnis, Gruppen in einem Cluster zu beschreiben, was der DESCRIBE GROUP-ACL von Apache Kafka entspricht
-
kafka-cluster: DescribeTopic - Erteilt die Erlaubnis, Themen in einem Cluster zu beschreiben, was der DESCRIBE TOPIC-ACL von Apache Kafka entspricht
-
kafka-cluster: ReadData - Erteilt die Berechtigung, Daten aus Themen in einem Cluster zu lesen, was der READ TOPIC-ACL von Apache Kafka entspricht
Wenn Sie außerdem Aufzeichnungen fehlgeschlagener Aufrufe an ein Ziel für Fehlerfälle senden möchten, benötigen Sie je nach Zieltyp die folgenden Berechtigungen:
-
Für Amazon SQS SQS-Ziele: sqs: SendMessage — Ermöglicht das Senden von Nachrichten an eine Amazon SQS SQS-Warteschlange
-
Für Amazon-SNS-Ziele: sns:Publish – erlaubt die Veröffentlichung von Nachrichten zu einem Amazon-SNS-Thema
-
Für Amazon S3 S3-Bucket-Ziele: s3: PutObject und s3: ListBucket — Ermöglicht das Schreiben und Auflisten von Objekten in einem Amazon S3 S3-Bucket
Informationen zur Behebung von Authentifizierungs- und Autorisierungsfehlern finden Sie unter Fehlerbehebung bei der Kafka-Zuordnung von Ereignisquellen.