Definieren von Berechtigungen für EKS-Pod-Identitäten, um Rollen basierend auf Tags anzunehmen - Amazon EKS

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.

Definieren von Berechtigungen für EKS-Pod-Identitäten, um Rollen basierend auf Tags anzunehmen

EKS Pod Identity fügt den temporären Anmeldeinformationen für jeden Pod Tags mit Attributen wie Cluster-Name, Namespace und Servicekontoname hinzu. Diese Rollensitzungs-Tags ermöglichen es Administratoren, eine einzelne Rolle zu erstellen, die für alle Dienstkonten verwendet werden kann, indem sie den Zugriff auf AWS Ressourcen auf der Grundlage übereinstimmender Tags ermöglicht. Durch die zusätzliche Unterstützung für Rollensitzungs-Tags können Kunden engere Sicherheitsgrenzen zwischen Clustern und Workloads innerhalb von Clustern durchsetzen und gleichzeitig dieselben IAM-Rollen und IAM-Richtlinien wiederverwenden.

Die folgende Richtlinie beispielsweise erlaubt die Aktion s3:GetObject, wenn das Objekt mit dem Namen des EKS-Clusters gekennzeichnet ist.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListAllMyBuckets" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectTagging" ], "Resource": "*", "Condition": { "StringEquals": { "s3:ExistingObjectTag/eks-cluster-name": "${aws:PrincipalTag/eks-cluster-name}" } } } ] }

Liste der von EKS Pod Identity hinzugefügten Sitzungs-Tags

Die folgende Liste enthält alle Schlüssel für Tags, die der AssumeRole-Anfrage von Amazon EKS hinzugefügt werden. Um diese Tags in Richtlinien zu verwenden, geben Sie ${aws:PrincipalTag/ gefolgt vom Schlüssel an, zum Beispiel ${aws:PrincipalTag/kubernetes-namespace}.

  • eks-cluster-arn

  • eks-cluster-name

  • kubernetes-namespace

  • kubernetes-service-account

  • kubernetes-pod-name

  • kubernetes-pod-uid

Kontoübergreifende Tags

Alle Sitzungs-Tags, die von EKS Pod Identity hinzugefügt werden, sind transitiv. Die Tag-Schlüssel und -Werte werden an alle AssumeRole-Aktionen weitergegeben, die Ihre Workloads verwenden, um Rollen auf ein anderes Konto zu wechseln. Sie können diese Tags in Richtlinien in anderen Konten verwenden, um den Zugriff in kontoübergreifenden Szenarien einzuschränken. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Verketten von Rollen mit Sitzungs-Tags.

Benutzerdefinierte Tags

EKS Pod Identity kann der AssumeRole-Aktion, die es ausführt, keine zusätzlichen benutzerdefinierten Tags hinzufügen. Tags, die Sie auf die IAM-Rolle anwenden, sind jedoch immer im gleichen Format verfügbar: ${aws:PrincipalTag/ gefolgt vom Schlüssel, zum Beispiel ${aws:PrincipalTag/MyCustomTag}.

Anmerkung

Tags, die der Sitzung über die sts:AssumeRole-Anfrage hinzugefügt wurden, haben im Konfliktfall Vorrang. Nehmen wir beispielsweise an, dass Amazon EKS der Sitzung einen Schlüssel eks-cluster-name und einen Wert my-cluster hinzufügt, wenn EKS die Kundenrolle übernimmt. Sie haben der IAM-Rolle auch ein eks-cluster-name-Tag mit dem Wert my-own-cluster hinzugefügt. In diesem Fall hat Ersteres Vorrang und der Wert für das eks-cluster-name-Tag ist my-cluster.