Funktionsweise von Amazon MKS mit IAM - Amazon Managed Streaming für Apache Kafka

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.

Funktionsweise von Amazon MKS mit IAM

Bevor Sie mit IAM den Zugriff auf Amazon MSK verwalten können, sollten Sie sich darüber informieren, welche IAM-Funktionen Sie mit Amazon MSK verwenden können. Einen allgemeinen Überblick darüber, wie Amazon MSK und andere AWS Services mit IAM zusammenarbeiten, finden Sie unter AWS Services That Work with IAM im IAM-Benutzerhandbuch.

Identitätsbasierte Amazon-MSK-Richtlinien

Mit identitätsbasierten IAM-Richtlinien können Sie angeben, welche Aktionen und Ressourcen zugelassen oder abgelehnt werden. Darüber hinaus können Sie die Bedingungen festlegen, unter denen Aktionen zugelassen oder abgelehnt werden. Amazon MSK unterstützt bestimmte Aktionen, Ressourcen und Bedingungsschlüssel. Informationen zu sämtlichen Elementen, die Sie in einer JSON-Richtlinie verwenden, finden Sie in der IAM-Referenz für JSON-Richtlinienelemente im IAM-Benutzerhandbuch.

Aktionen

Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer Zugriff auf was hat. Das heißt, welcher Prinzipal kann Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen.

Das Element Action einer JSON-Richtlinie beschreibt die Aktionen, mit denen Sie den Zugriff in einer Richtlinie zulassen oder verweigern können. Richtlinienaktionen haben normalerweise denselben Namen wie der zugehörige AWS API-Vorgang. Es gibt einige Ausnahmen, z. B. Aktionen, die nur mit Genehmigung durchgeführt werden können und für die es keinen passenden API-Vorgang gibt. Es gibt auch einige Operationen, die mehrere Aktionen in einer Richtlinie erfordern. Diese zusätzlichen Aktionen werden als abhängige Aktionen bezeichnet.

Schließen Sie Aktionen in eine Richtlinie ein, um Berechtigungen zur Durchführung der zugeordneten Operation zu erteilen.

Richtlinienaktionen in Amazon MSK verwenden das folgende Präfix vor der Aktion: kafka:. Wenn Sie beispielsweise einem Benutzer die Berechtigung erteilen möchten, einen MSK-Cluster mit dem Amazon-MSK-API-Vorgang DescribeCluster zu beschreiben, nehmen Sie die Aktion kafka:DescribeCluster in die Richtlinie auf. Richtlinienanweisungen müssen entweder ein – Actionoder ein NotAction-Element enthalten. Amazon MSK definiert einen eigenen Satz von Aktionen, die Aufgaben beschreiben, die Sie mit diesem Service durchführen können.

Um mehrere Aktionen in einer einzigen Anweisung anzugeben, trennen Sie sie wie folgt durch Kommata:

"Action": ["kafka:action1", "kafka:action2"]

Sie können auch Platzhalter verwenden, um mehrere Aktionen anzugeben. Beispielsweise können Sie alle Aktionen festlegen, die mit dem Wort Describe beginnen, einschließlich der folgenden Aktion:

"Action": "kafka:Describe*"

Eine Liste der Amazon-MSK-Aktionen finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon Managed Streaming für Apache Kafka im IAM-Benutzerhandbuch.

Ressourcen

Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer Zugriff auf was hat. Das bedeutet die Festlegung, welcher Prinzipal Aktionen für welche Ressourcen unter welchen Bedingungen ausführen kann.

Das JSON-Richtlinienelement Resource gibt die Objekte an, auf welche die Aktion angewendet wird. Anweisungen müssen entweder ein – Resourceoder ein NotResource-Element enthalten. Als bewährte Methode geben Sie eine Ressource mit dem zugehörigen Amazon-Ressourcennamen (ARN) an. Sie können dies für Aktionen tun, die einen bestimmten Ressourcentyp unterstützen, der als Berechtigungen auf Ressourcenebene bezeichnet wird.

Verwenden Sie für Aktionen, die keine Berechtigungen auf Ressourcenebene unterstützen, z. B. Auflistungsoperationen, einen Platzhalter (*), um anzugeben, dass die Anweisung für alle Ressourcen gilt.

"Resource": "*"

Die Amazon-MSK-Instance-Ressource hat den folgenden ARN:

arn:${Partition}:kafka:${Region}:${Account}:cluster/${ClusterName}/${UUID}

Weitere Informationen zum Format von ARNs finden Sie unter Amazon Resource Names (ARNs) und AWS Service Namespaces.

Wenn Sie beispielsweise die CustomerMessages-Instance in Ihrer Anweisung angeben möchten, verwenden Sie den folgenden ARN:

"Resource": "arn:aws:kafka:us-east-1:123456789012:cluster/CustomerMessages/abcd1234-abcd-dcba-4321-a1b2abcd9f9f-2"

Um alle Instances anzugeben, die zu einem bestimmten Konto gehören, verwenden Sie den Platzhalter (*):

"Resource": "arn:aws:kafka:us-east-1:123456789012:cluster/*"

Einige Amazon-MKS-Aktionen, z. B. das Erstellen von Ressourcen, können für bestimmte Ressourcen nicht ausgeführt werden. In diesen Fällen müssen Sie den Platzhalter (*) verwenden.

"Resource": "*"

Um mehrere Ressourcen in einer einzigen Anweisung anzugeben, trennen Sie die ARNs durch Kommata voneinander.

"Resource": ["resource1", "resource2"]

Eine Liste der Amazon-MSK-Ressourcen-Typen und ihrer ARNs finden Sie unter Von Amazon Managed Streaming für Apache Kafka definierte Ressourcen im IAM-Benutzerhandbuch. Informationen zu den Aktionen, mit denen Sie den ARN einzelner Ressourcen angeben können, finden Sie unter Von Amazon Managed Streaming für Apache Kafka definierte Aktionen.

Bedingungsschlüssel

Administratoren können mithilfe von AWS JSON-Richtlinien angeben, wer Zugriff auf was hat. Das heißt, welcher Prinzipal kann Aktionen für welche Ressourcen und unter welchen Bedingungen ausführen.

Das Element Condition (oder Condition block) ermöglicht Ihnen die Angabe der Bedingungen, unter denen eine Anweisung wirksam ist. Das Element Condition ist optional. Sie können bedingte Ausdrücke erstellen, die Bedingungsoperatoren verwenden, z. B. ist gleich oder kleiner als, damit die Bedingung in der Richtlinie mit Werten in der Anforderung übereinstimmt.

Wenn Sie mehrere Condition-Elemente in einer Anweisung oder mehrere Schlüssel in einem einzelnen Condition-Element angeben, wertet AWS diese mittels einer logischen AND-Operation aus. Wenn Sie mehrere Werte für einen einzelnen Bedingungsschlüssel angeben, AWS wertet die Bedingung mithilfe einer logischen OR Operation aus. Alle Bedingungen müssen erfüllt werden, bevor die Berechtigungen der Anweisung gewährt werden.

Sie können auch Platzhaltervariablen verwenden, wenn Sie Bedingungen angeben. Beispielsweise können Sie einem IAM-Benutzer die Berechtigung für den Zugriff auf eine Ressource nur dann gewähren, wenn sie mit dessen IAM-Benutzernamen gekennzeichnet ist. Weitere Informationen finden Sie unter IAM-Richtlinienelemente: Variablen und Tags im IAM-Benutzerhandbuch.

AWS unterstützt globale Bedingungsschlüssel und dienstspezifische Bedingungsschlüssel. Eine Übersicht aller AWS globalen Bedingungsschlüssel finden Sie unter Kontextschlüssel für AWS globale Bedingungen im IAM-Benutzerhandbuch.

Amazon MSK definiert seinen eigenen Satz von Bedingungsschlüsseln und unterstützt auch die Verwendung einiger globaler Bedingungsschlüssel. Eine Übersicht aller AWS globalen Bedingungsschlüssel finden Sie unter AWS Globale Bedingungskontextschlüssel im IAM-Benutzerhandbuch.

Eine Liste der Amazon-MSK-Bedingungsschlüssel finden Sie unter Bedingungsschlüssel für Amazon Managed Streaming für Apache Kafka im IAM-Benutzerhandbuch. Informationen dazu, mit welchen Aktionen und Ressourcen Sie einen Bedingungsschlüssel verwenden können, finden Sie unter Von Amazon Managed Streaming für Apache Kafka definierte Aktionen.

Beispiele

Beispiele für identitätsbasierte Amazon-MSK-Richtlinien finden Sie unter Beispiele für identitätsbasierte Amazon-MSK-Richtlinien.

Ressourcenbasierte Amazon-MSK-Richtlinien

Amazon MSK unterstützt eine Cluster-Richtlinie (auch als ressourcenbasierte Richtlinie bezeichnet) zur Verwendung mit Amazon-MSK-Clustern. Sie können eine Cluster-Richtlinie verwenden, um zu definieren, welche IAM-Prinzipale über kontoübergreifende Berechtigungen zum Einrichten einer privaten Konnektivität mit Ihrem Amazon-MSK-Cluster verfügen. Bei Verwendung mit der IAM-Client-Authentifizierung können Sie die Cluster-Richtlinie auch verwenden, um die Kafka-Datenebenen-Berechtigungen für die verbindenden Clients detailliert zu definieren.

Ein Beispiel für die Konfiguration einer Cluster-Richtlinie finden Sie unter Schritt 2: Eine Cluster-Richtlinie an den MSK-Cluster anhängen.

AWS verwaltete Richtlinien

Autorisierung basierend auf Amazon-MSK-Tags

Sie können Amazon-MSK-Clustern Tags anhängen. Um den Zugriff auf der Grundlage von Tags zu steuern, geben Sie im Bedingungselement einer Richtlinie Tag-Informationen an, indem Sie die Schlüssel kafka:ResourceTag/key-name, aws:RequestTag/key-name, oder Bedingung aws:TagKeys verwenden. Weitere Informationen über das Markieren von Amazon-MSK-Ressourcen finden Sie unter Markieren eines Amazon-MSK-Clusters.

Eine exemplarische identitätsbasierte Richtlinie zur Beschränkung des Zugriffs auf einen Cluster basierend auf den Tags dieses Clusters finden Sie unter Zugreifen auf Amazon-MSK-Cluster anhand von Tags.

Amazon-MSK-IAM-Rollen

Eine IAM-Rolle ist eine Entität in Ihrem Amazon–Web-Services-Konto mit spezifischen Berechtigungen.

Verwenden temporärer Anmeldeinformationen mit Amazon MSK

Sie können temporäre Anmeldeinformationen verwenden, um sich über einen Verbund anzumelden, eine IAM-Rolle anzunehmen oder eine kontenübergreifende Rolle anzunehmen. Sie erhalten temporäre Sicherheitsanmeldedaten, indem Sie AWS STS API-Operationen wie AssumeRoleoder GetFederationToken aufrufen.

Amazon MSK unterstützt die Verwendung temporärer Anmeldeinformationen.

Service-verknüpfte Rollen

Serviceverknüpfte Rollen erlauben Amazon Web Services den Zugriff auf Ressourcen in anderen Services, um eine Aktion in Ihrem Auftrag auszuführen. Serviceverknüpfte Rollen werden in Ihrem IAM-Konto angezeigt und gehören zum Service. Ein -Administrator kann die Berechtigungen für serviceverknüpfte Rollen anzeigen, aber nicht bearbeiten.

Amazon MSK unterstützt serviceverknüpfte Rollen. Weitere Informationen zum Erstellen oder Verwalten von serviceverknüpften Amazon-MSK-Rollen finden Sie unter Verwendung von serviceverknüpften Rollen für Amazon MSK.