Zugangseinträge verwalten - Amazon EKS

Helfen Sie mit, diese Seite zu verbessern

Möchten Sie zu diesem Benutzerhandbuch beitragen? Scrollen Sie zum Ende dieser Seite und wählen Sie Diese Seite bearbeiten am aus GitHub. Ihre Beiträge werden dazu beitragen, unser Benutzerhandbuch für alle zu verbessern.

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.

Zugangseinträge verwalten

Voraussetzungen
  • Vertrautheit mit den Cluster-Zugriffsoptionen für Ihren Amazon-EKS-Cluster. Weitere Informationen finden Sie unter Zugriff auf Kubernetes APIs gewähren .

  • Ein vorhandener Amazon-EKS-Cluster. Informationen zum Bereitstellen finden Sie unter Erste Schritte mit Amazon EKS. Um Zugriffseinträge verwenden und den Authentifizierungsmodus eines Clusters ändern zu können, muss der Cluster über eine Plattformversion verfügen, die mindestens der Version aus der folgenden Tabelle entspricht, oder über eine Kubernetes-Version, die neuer als die in der Tabelle aufgeführten Versionen ist.

    Kubernetes-Version Plattformversion
    1.30 eks.2
    1.29 eks.1
    1.28 eks.6
    1.27 eks.10
    1.26 eks.11
    1.25 eks.12
    1.24 eks.15
    1.23 eks.17

    Sie können Ihre aktuelle Kubernetes- und Plattformversion überprüfen, indem Sie my-cluster im folgenden Befehl durch den Namen Ihres Clusters ersetzen und dann den geänderten Befehl ausführen: aws eks describe-cluster --name my-cluster --query 'cluster.{"Kubernetes Version": version, "Platform Version": platformVersion}'.

    Wichtig

    Nachdem Amazon EKS Ihren Cluster auf die in der Tabelle aufgeführte Plattformversion aktualisiert hat, erstellt Amazon EKS für den IAM-Prinzipal, der den Cluster ursprünglich erstellt hat, einen Zugriffseintrag mit Administratorberechtigungen für den Cluster. Falls dieser IAM-Prinzipal nicht über Administratorberechtigungen für den Cluster verfügen soll, entfernen Sie den von Amazon EKS erstellten Zugriffseintrag.

    Bei Clustern mit Plattformversionen, die älter sind als die in der vorherigen Tabelle aufgeführten Versionen, ist der Cluster-Ersteller immer ein Cluster-Administrator. Es ist nicht möglich, dem IAM-Benutzer oder der IAM-Rolle, der bzw. die den Cluster erstellt hat, die Cluster-Administratorberechtigungen zu entziehen.

  • Ein IAM-Prinzipal mit folgenden Berechtigungen für Ihren Cluster: CreateAccessEntry, ListAccessEntries, DescribeAccessEntry, DeleteAccessEntry und UpdateAccessEntry. Weitere Informationen zu Amazon-EKS-Berechtigungen finden Sie in der Service-Authorization-Referenz unter Von Amazon Elastic Kubernetes Service definierte Aktionen.

  • Ein vorhandener IAM-Prinzipal, für den ein Zugriffseintrag erstellt werden soll, oder ein vorhandener Zugriffseintrag, der aktualisiert oder gelöscht werden soll.

Einrichten von Zugriffseinträgen

Wenn Sie Zugriffseinträge verwenden möchten, müssen Sie zunächst den Authentifizierungsmodus des Clusters in API_AND_CONFIG_MAP oder API ändern. Dadurch wird die API für Zugriffseinträge hinzugefügt.

AWS Management Console
So erstellen Sie einen Zugriffseintrag
  1. Öffnen Sie die Amazon-EKS-Konsole unter https://console.aws.amazon.com/eks/home#/clusters.

  2. Wählen Sie den Namen des Clusters aus, in dem Sie einen Zugriffseintrag erstellen möchten.

  3. Wählen Sie die Registerkarte Zugriff aus.

  4. Unter Authentifizierungsmodus wird der aktuelle Authentifizierungsmodus des Clusters angezeigt. Wenn der Modus EKS API lautet, können Sie bereits Zugriffseinträge hinzufügen und die restlichen Schritte überspringen.

  5. Wählen Sie Zugriff verwalten aus.

  6. Wählen Sie unter Cluster-Authentifizierungsmodus einen Modus mit der EKS API aus. Beachten Sie, dass der Authentifizierungsmodus nicht mehr in einen Modus geändert werden kann, in dem die EKS API und die Zugriffseinträge entfernt werden.

  7. Wählen Sie Änderungen speichern aus. Amazon EKS beginnt mit der Aktualisierung des Clusters, der Status des Clusters ändert sich in Updating und die Änderung wird auf der Registerkarte Aktualisierungsverlauf erfasst.

  8. Warten Sie, bis der Cluster wieder den Status Active hat. Wenn der Clusterstatus wieder Active lautet, können Sie die unter Erstellen von Zugriffseinträgen angegebenen Schritte ausführen, um Clusterzugriff für IAM-Prinzipale hinzuzufügen.

AWS CLI
Voraussetzung

Die neueste Version von Version AWS CLI 1 ist auf Ihrem Gerät installiert und konfiguriert oder. AWS CloudShell AWS CLI v2 unterstützt seit einigen Tagen keine neuen Funktionen. Sie können Ihre aktuelle Version mit aws --version | cut -d / -f2 | cut -d ' ' -f1 überprüfen. Paket-Manager wie yum, apt-get oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter Installation, Aktualisierung und Deinstallation AWS CLI und Schnellkonfiguration mit aws configure im AWS Command Line Interface Benutzerhandbuch. Die in der installierte AWS CLI Version AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

  1. Führen Sie den folgenden Befehl aus. Ersetzen Sie my-cluster durch den Namen Ihres Clusters. Wenn Sie die ConfigMap-Methode dauerhaft deaktivieren möchten, ersetzen Sie API_AND_CONFIG_MAP durch API.

    Amazon EKS beginnt mit der Aktualisierung des Clusters, der Status des Clusters ändert sich in UPDATING und die Änderung wird in aws eks list-updates erfasst.

    aws eks update-cluster-config --name my-cluster --access-config authenticationMode=API_AND_CONFIG_MAP
  2. Warten Sie, bis der Cluster wieder den Status Active hat. Wenn der Clusterstatus wieder Active lautet, können Sie die unter Erstellen von Zugriffseinträgen angegebenen Schritte ausführen, um Clusterzugriff für IAM-Prinzipale hinzuzufügen.

Erstellen von Zugriffseinträgen

Überlegungen

Berücksichtigen Sie Folgendes, bevor Sie Zugriffseinträge erstellen:

  • Ein Zugriffseintrag enthält den Amazon-Ressourcennamen (ARN) genau eines vorhandenen IAM-Prinzipals. Ein IAM-Prinzipal kann nicht in mehreren Zugriffseinträgen enthalten sein. Zusätzliche Überlegungen zu dem von Ihnen angegebenen ARN:

    • In den bewährten Methoden für IAM wird empfohlen, für den Zugriff auf Ihren Cluster IAM-Rollen mit kurzfristigen Anmeldeinformationen zu verwenden anstatt IAM-Benutzer mit langfristigen Anmeldeinformationen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Erfordern, dass menschliche Benutzer für den Zugriff AWS mithilfe temporärer Anmeldeinformationen einen Verbund mit einem Identitätsanbieter verwenden müssen.

    • Ein ARN für eine IAM-Rolle kann einen Pfad enthalten. ARNs in aws-auth ConfigMap-Einträgen können keinen Pfad enthalten. Ihr ARN kann beispielsweise arn:aws:iam::111122223333:role/development/apps/my-role oder arn:aws:iam::111122223333:role/my-role lauten.

    • Wenn der Typ des Zugriffseintrags etwas anderes ist als STANDARD (siehe nächste Überlegung zu Typen), muss sich der ARN in demselben befinden AWS-Konto , in dem sich Ihr Cluster befindet. Wenn der Typ istSTANDARD, kann sich der ARN in demselben oder einem anderen Konto befinden AWS-Konto als das Konto, in dem sich Ihr Cluster befindet.

    • Nach der Erstellung des Zugriffseintrags kann der IAM-Prinzipal nicht mehr geändert werden.

    • Sollten Sie den IAM-Prinzipal mit diesem ARN löschen, wird der Zugriffseintrag nicht automatisch gelöscht. Es empfiehlt sich, den Zugriffseintrag mit einem ARN für einen gelöschten IAM-Prinzipal zu löschen. Wenn Sie den Zugriffseintrag nicht löschen und den IAM-Prinzipal später einmal erneut erstellen, funktioniert der Zugriffseintrag nicht mehr, auch wenn der ARN gleich ist. Dies liegt daran, dass, obwohl der ARN für den neu erstellten IAM-Prinzipal derselbe ist, der roleID oder userID (Sie können dies mit dem aws sts get-caller-identity AWS CLI Befehl sehen) für den neu erstellten IAM-Prinzipal anders ist als für den ursprünglichen IAM-Prinzipal. Auch wenn Sie die Rollen-ID (roleID) bzw. die Benutzer-ID (userID) des IAM-Prinzipals für einen Zugriffseintrag nicht sehen, wird sie von Amazon EKS zusammen mit dem Zugriffseintrag gespeichert.

  • Jeder Zugriffseintrag hat einen Typ. Sie können EC2 Linux (für eine IAM-Rolle, die mit selbstverwalteten Linux- oder Bottlerocket-Knoten verwendet wird), EC2 Windows (für eine IAM-Rolle, die mit selbstverwalteten Windows-Knoten verwendet wird), FARGATE_LINUX (für IAM-Rollen, die mit verwendet werden AWS Fargate (Fargate)) oder STANDARD als Typ angeben. Wenn Sie keinen Typ angeben, wird er von Amazon EKS automatisch auf STANDARD festgelegt. Für eine IAM-Rolle, die für eine verwaltete Knotengruppe oder für ein Fargate-Profil verwendet wird, muss kein Zugriffseintrag erstellt werden, da Amazon EKS Einträge für diese Rollen zu aws-auth ConfigMap hinzufügt (unabhängig davon, welche Plattformversion Ihr Cluster verwendet).

    Nach der Erstellung des Zugriffseintrags kann der Typ nicht mehr geändert werden.

  • Wenn der Typ des Zugriffseintrags STANDARD lautet, können Sie einen Benutzernamen für den Zugriffseintrag angeben. Wenn Sie keinen Wert für den Benutzernamen angeben, legt Amazon EKS einen der folgenden Werte für Sie fest, abhängig vom Typ des Zugriffseintrags und davon, ob es sich bei dem von Ihnen angegebenen IAM-Prinzipal um eine IAM-Rolle oder um einen IAM-Benutzer handelt. Sofern Sie keinen spezifischen Grund für die Angabe eines eigenen Benutzernamens haben, empfehlen wir, keinen anzugeben und ihn automatisch von Amazon EKS generieren zu lassen. Beachten Sie bei Angabe eines eigenen Benutzernamens Folgendes:

    • Er darf nicht mit system:, eks:, aws:, amazon: oder iam: beginnen.

    • Bei einem Benutzername für eine IAM-Rolle empfiehlt es sich, am Ende des Benutzernamens {{SessionName}} hinzuzufügen. Wenn Sie Ihrem Benutzernamen etwas hinzufügen{{SessionName}}, muss der Benutzername einen Doppelpunkt vor {{}} enthalten. SessionName Wenn diese Rolle übernommen wird, wird der Name der Sitzung, der bei der Übernahme der Rolle angegeben wurde, automatisch an den Cluster übergeben und erscheint in den CloudTrail Protokollen. Der Benutzername john{{SessionName}} ist beispielsweise nicht zulässig. Er müsste :john{{SessionName}} oder jo:hn{{SessionName}} lauten. Der Doppelpunkt muss sich nur vor {{SessionName}} befinden. Der von Amazon EKS generierte Benutzername in der folgenden Tabelle enthält einen ARN. Da ein ARN Doppelpunkte enthält, erfüllt er diese Anforderung. Der Doppelpunkt ist nicht erforderlich, wenn Sie {{SessionName}} nicht in Ihren Benutzernamen einschließen.

    IAM-Prinzipaltyp Typ Von Amazon EKS automatisch festgelegter Wert für den Benutzernamen
    Benutzer STANDARD

    Der ARN des Benutzers. Beispiel: arn:aws:iam::111122223333:user/my-user

    Rolle STANDARD

    Der STS-ARN der Rolle, wenn sie angenommen wird. Amazon EKS fügt am Ende der Rolle {{SessionName}} hinzu.

    Beispiel: arn:aws:sts::111122223333:assumed-role/my-role/{{SessionName}}

    Wenn der ARN der von Ihnen angegebenen Rolle einen Pfad enthalten hat, wird dieser von Amazon EKS im generierten Benutzernamen entfernt.

    Rolle EC2 Linux oder EC2 Windows

    system:node:{{EC2PrivateDNSName}}

    Rolle FARGATE_LINUX

    system:node:{{SessionName}}

    Sie können den Benutzernamen ändern, nachdem der Zugriffseintrag erstellt wurde.

  • Wenn der Typ eines Zugriffseintrags STANDARD ist und Sie die Kubernetes-RBAC-Autorisierung verwenden möchten, können Sie dem Zugriffseintrag einen oder mehrere Gruppennamen hinzufügen. Gruppennamen können nach der Erstellung eines Zugriffseintrags hinzugefügt und entfernt werden. Damit der IAM-Prinzipal auf Kubernetes-Objekte in Ihrem Cluster zugreifen kann, müssen Sie Kubernetes-RBAC-Objekte (rollenbasierte Autorisierung) erstellen und verwalten. Erstellen Sie Kubernetes-, RoleBinding- oder ClusterRoleBinding-Objekte für Ihren Cluster, die den Gruppennamen als subject für kind: Group angeben. Kubernetes autorisiert den IAM-Prinzipalzugriff auf alle Clusterobjekte, die Sie in einem Kubernetes-Objekt vom Typ Role oder ClusterRole angegeben haben, das Sie auch in roleRef Ihrer Bindung angegeben haben. Wenn Sie Gruppennamen angeben, sollten Sie mit den Kubernetes-RBAC-Objekten (rollenbasierte Autorisierung) vertraut sein. Weitere Informationen finden Sie unter Using RBAC authorization in der Kubernetes-Dokumentation.

    Wichtig

    Amazon EKS überprüft nicht, ob ggf. in Ihrem Cluster vorhandene Kubernetes-RBAC-Objekte einen der von Ihnen angegebenen Gruppennamen enthalten.

    Anstelle der Autorisierung des IAM-Prinzipalzugriffs auf Kubernetes-Objekte in Ihrem Cluster durch Kubernetes (oder zusätzlich dazu) können Sie einem Zugriffseintrag Amazon EKS-Zugriffsrichtlinien zuordnen. Amazon EKS autorisiert für IAM-Prinzipale den Zugriff auf Kubernetes-Objekte in Ihrem Cluster mit den in der Zugriffsrichtlinie festgelegten Berechtigungen. Sie können die Berechtigungen einer Zugriffsrichtlinie auf von Ihnen angegebene Kubernetes-Namespaces ausrichten. Für die Verwendung von Zugriffsrichtlinien müssen keine Kubernetes-RBAC-Objekte verwaltet werden. Weitere Informationen finden Sie unter Zuordnen von Zugriffsrichtlinien zu Zugriffseinträgen und Aufheben dieser Zuordnung.

  • Wenn Sie einen Zugriffseintrag mit dem Typ EC2 Linux oder EC2 Windows erstellen, muss der IAM-Prinzipal, der den Zugriffseintrag erstellt, über die Berechtigung iam:PassRole verfügen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Erteilen von Berechtigungen, mit denen ein Benutzer eine Rolle an einen AWS-Serviceübergeben kann.

  • Ähnlich wie beim standardmäßigen IAM-Verhalten sind die Erstellung und Aktualisierung von Zugriffseinträgen letztlich konsistent und es kann mehrere Sekunden dauern, bis sie wirksam werden, nachdem der erste API-Aufruf erfolgreich abgeschlossen wurde. Sie müssen Ihre Anwendungen unter Berücksichtigung dieser potenziellen Verzögerungen konzipieren. Es empfiehlt sich, in die kritischen, hochverfügbaren Code-Pfade Ihrer Anwendung keine Erstellungen oder Aktualisierungen von Zugriffseinträgen einzuschließen. Nehmen Sie -Änderungen stattdessen in einer separaten Initialisierungs- oder Einrichtungsroutine vor, die seltener ausgeführt wird. Vergewissern Sie sich auch, dass die Änderungen weitergegeben wurden, bevor die Produktionsarbeitsabläufe davon abhängen.

  • Zugriffseinträge unterstützen keine dienstbezogenen Rollen. Sie können keine Zugriffseinträge erstellen, bei denen der Prinzipal-ARN eine dienstverknüpfte Rolle ist. Sie können dienstverknüpfte Rollen anhand ihrer ARN identifizieren, die im folgenden Format angegeben istarn:aws:iam::*:role/aws-service-role/*.

Sie können einen Zugriffseintrag mit dem AWS Management Console oder dem erstellen AWS CLI.

AWS Management Console
So erstellen Sie einen Zugriffseintrag
  1. Öffnen Sie die Amazon-EKS-Konsole unter https://console.aws.amazon.com/eks/home#/clusters.

  2. Wählen Sie den Namen des Clusters aus, in dem Sie einen Zugriffseintrag erstellen möchten.

  3. Wählen Sie die Registerkarte Zugriff aus.

  4. Wählen Sie Zugriffseintrag erstellen aus.

  5. Wählen Sie unter IAM-Prinzipal eine bereits vorhandene IAM-Rolle oder einen bereits vorhandenen IAM-Benutzer aus. In den bewährten Methoden für IAM wird empfohlen, für den Zugriff auf Ihren Cluster IAM-Rollen mit kurzfristigen Anmeldeinformationen zu verwenden anstatt IAM-Benutzer mit langfristigen Anmeldeinformationen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Erfordern, dass menschliche Benutzer den Verbund mit einem Identitätsanbieter verwenden müssen, um AWS mithilfe temporärer Anmeldeinformationen darauf zuzugreifen.

  6. Wählen Sie unter Typ die Option EC2 Linux oder EC2 Windows aus, wenn sich der Zugriffseintrag auf die Knotenrolle bezieht, die für selbstverwaltete Amazon-EC2-Knoten verwendet wird. Übernehmen Sie andernfalls die Standardeinstellung (Standard).

  7. Wenn Sie unter Typ die Option Standard ausgewählt haben, können Sie bei Bedarf unter Benutzername einen Benutzernamen angeben.

  8. Wenn Sie unter Typ die Option Standard ausgewählt haben und die Kubernetes-RBAC-Autorisierung für den IAM-Prinzipal verwenden möchten, können Sie unter Gruppen einen oder mehrere Namen angeben. Wenn Sie keine Gruppennamen angeben und die Amazon-EKS-Autorisierung verwenden möchten, können Sie in einem späteren Schritt (oder nach der Erstellung des Zugriffseintrags) eine Zugriffsrichtlinie zuordnen.

  9. (Optional) Weisen Sie dem Zugriffseintrag unter Tags Beschriftungen zu. So können Sie beispielsweise ganz einfach nach allen Ressourcen mit dem gleichen Tag suchen.

  10. Wählen Sie Weiter aus.

  11. Wenn Sie den Typ Standard ausgewählt haben und möchten, dass Amazon EKS den IAM-Prinzipal autorisiert, damit dieser über Berechtigungen für die Kubernetes-Objekte in Ihrem Cluster verfügt, können Sie auf der Seite Zugriffsrichtlinie hinzufügen die folgenden Schritte ausführen. Klicken Sie andernfalls auf Next (Weiter).

    1. Wählen Sie unter Richtlinienname eine Zugriffsrichtlinie aus. Sie können zwar die Berechtigungen der Zugriffsrichtlinien nicht anzeigen, sie enthalten aber ähnliche Berechtigungen wie die für Benutzer vorgesehenen Kubernetes-Objekte vom Typ ClusterRole. Weitere Informationen finden Sie in der Dokumentation zu Kubernetes unter User-facing roles.

    2. Wählen Sie eine der folgenden Optionen:

      • Cluster: Wählen Sie diese Option aus, wenn Amazon EKS den IAM-Prinzipal so autorisieren soll, dass er für alle Kubernetes-Objekte in Ihrem Cluster über die in der Zugriffsrichtlinie festgelegten Berechtigungen verfügt.

      • Kubernetes-Namespace: Wählen Sie diese Option aus, wenn Amazon EKS den IAM-Prinzipal so autorisieren soll, dass er für alle Kubernetes-Objekte in einem spezifischen Kubernetes-Namespace Ihres Clusters über die in der Zugriffsrichtlinie festgelegten Berechtigungen verfügt. Geben Sie unter Namespace den Namen des Kubernetes-Namespace in Ihrem Cluster ein. Wenn Sie zusätzliche Namespaces hinzufügen möchten, wählen Sie Neuen Namespace hinzufügen aus und geben Sie den Namespace-Namen ein.

    3. Wenn Sie weitere Richtlinien hinzufügen möchten, wählen Sie Richtlinie hinzufügen aus. Sie können für jede Richtlinie unterschiedliche Geltungsbereiche festlegen, aber jede Richtlinie kann nur einmal hinzugefügt werden.

    4. Wählen Sie Weiter aus.

  12. Überprüfen Sie die Konfiguration für Ihren Zugriffseintrag. Sollten Sie einen Fehler entdecken, wählen Sie Zurück aus, um schrittweise zurück zu navigieren und den Fehler zu korrigieren. Ist die Konfiguration korrekt, wählen Sie Erstellen aus.

AWS CLI
Voraussetzung

Die neueste Version von Version AWS CLI 1 ist auf Ihrem Gerät installiert und konfiguriert oder AWS CloudShell. AWS CLI v2 unterstützt seit einigen Tagen keine neuen Funktionen. Sie können Ihre aktuelle Version mit aws --version | cut -d / -f2 | cut -d ' ' -f1 überprüfen. Paket-Manager wie yum, apt-get oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version finden Sie unter Installation, Aktualisierung und Deinstallation AWS CLI und Schnellkonfiguration mit aws configure im AWS Command Line Interface Benutzerhandbuch. Die in der installierte AWS CLI Version AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

So erstellen Sie einen Zugriffseintrag

Sie können eines der folgenden Beispiele verwenden, um Zugriffseinträge zu erstellen:

  • Erstellen Sie einen Zugriffseintrag für eine selbstverwaltete Amazon-EC2-Linux-Knotengruppe. Ersetzen Sie my-cluster durch den Namen Ihres Clusters, 111122223333 durch Ihre AWS-Konto ID und eks-my-cluster-self-managed-ng-1 durch den Namen Ihrer Node-IAM-Rolle. Wenn es sich bei Ihrer Knotengruppe um eine Windows-Knotengruppe handelt, ersetzen Sie EC2_Linux durch EC2_Windows.

    aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::111122223333:role/EKS-my-cluster-self-managed-ng-1 --type EC2_Linux

    Bei Angabe eines anderen Typs als STANDARD kann die Option --kubernetes-groups nicht verwendet werden. Sie können diesem Zugriffseintrag keine Zugriffsrichtlinie zuordnen, da der Typ nicht den Wert STANDARD hat.

  • Erstellen Sie einen Zugriffseintrag, der eine IAM-Rolle zulässt, die nicht für eine selbstverwaltete Amazon-EC2-Knotengruppe verwendet wird, mit der Kubernetes Zugriff auf Ihren Cluster autorisieren soll. Ersetzen Sie my-cluster durch den Namen Ihres Clusters, 111122223333 durch Ihre ID und my-role durch den Namen Ihrer IAM-Rolle. AWS-Konto Ersetzen Sie Viewers durch den Namen einer Gruppe, die Sie in einem Kubernetes-Objekt vom Typ ClusterRoleBinding oder RoleBinding in Ihrem Cluster angegeben haben.

    aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::111122223333:role/my-role --type STANDARD --user Viewers --kubernetes-groups Viewers
  • Erstellen Sie einen Zugriffseintrag, der es einem IAM-Benutzer ermöglicht, sich bei Ihrem Cluster zu authentifizieren. Dieses Beispiel soll zeigen, dass es diese Möglichkeit gibt. In den bewährten Methoden für IAM wird empfohlen, für den Zugriff auf Ihren Cluster IAM-Rollen mit kurzfristigen Anmeldeinformationen zu verwenden anstatt IAM-Benutzer mit langfristigen Anmeldeinformationen. Weitere Informationen finden Sie im IAM-Benutzerhandbuch unter Erfordern, dass menschliche Benutzer für den Zugriff AWS mithilfe temporärer Anmeldeinformationen einen Verbund mit einem Identitätsanbieter verwenden müssen.

    aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::111122223333:user/my-user --type STANDARD --username my-user

    Wenn dieser Benutzer mehr Zugriff auf Ihren Cluster haben soll als ihm durch die Berechtigungen in den Kubernetes-API-Erkennungsrollen gewährt wird, müssen Sie dem Zugriffseintrag eine Zugriffsrichtlinie zuordnen, da die Option --kubernetes-groups nicht verwendet wird. Weitere Informationen finden Sie in der Dokumentation zu Kubernetes unter Zuordnen von Zugriffsrichtlinien zu Zugriffseinträgen und Aufheben dieser Zuordnung sowie unter API discovery roles.

Aktualisieren von Zugriffseinträgen

Sie können einen Zugriffseintrag mit dem AWS Management Console oder dem AWS CLI aktualisieren.

AWS Management Console
So aktualisieren Sie einen Zugriffseintrag
  1. Öffnen Sie die Amazon-EKS-Konsole unter https://console.aws.amazon.com/eks/home#/clusters.

  2. Wählen Sie den Namen des Clusters aus, in dem Sie einen Zugriffseintrag erstellen möchten.

  3. Wählen Sie die Registerkarte Zugriff aus.

  4. Wählen Sie den Zugriffseintrag aus, den Sie aktualisieren möchten.

  5. Wählen Sie Bearbeiten aus.

  6. Unter Benutzername können Sie den vorhandenen Wert ändern.

  7. Unter Gruppen können Sie Gruppennamen entfernen oder neue Gruppennamen hinzufügen. Die Gruppennamen system:nodes und system:bootstrappers dürfen nicht entfernt werden (sofern vorhanden). Wenn Sie diese Gruppen entfernen, funktioniert Ihr Cluster unter Umständen nicht mehr ordnungsgemäß. Wenn Sie keine Gruppennamen angeben und die Amazon-EKS-Autorisierung verwenden möchten, ordnen Sie in einem späteren Schritt eine Zugriffsrichtlinie zu.

  8. Unter Tags können Sie dem Zugriffseintrag Beschriftungen zuweisen. So können Sie beispielsweise ganz einfach nach allen Ressourcen mit dem gleichen Tag suchen. Außerdem können Sie vorhandene Tags entfernen.

  9. Wählen Sie Änderungen speichern aus.

  10. Informationen zum Zuordnen einer Zugriffsrichtlinie zu dem Eintrag finden Sie unter Zuordnen von Zugriffsrichtlinien zu Zugriffseinträgen und Aufheben dieser Zuordnung.

AWS CLI
Voraussetzung

Version 2.12.3 oder höher oder Version 1.27.160 oder höher von AWS Command Line Interface (AWS CLI), die auf Ihrem Gerät installiert und konfiguriert ist, oder AWS CloudShell. Um Ihre aktuelle Version zu überprüfen, verwenden Sie aws --version | cut -d / -f2 | cut -d ' ' -f1. Paket-Manager wie yum, apt-get oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version von finden Sie unter Installation, Aktualisierung und Deinstallation der AWS CLI und Schnellkonfiguration mit aws configure im AWS Command Line Interface -Benutzerhandbuch. Die AWS CLI Version, in der installiert ist, AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

So aktualisieren Sie einen Zugriffseintrag

Ersetzen Sie my-cluster durch den Namen Ihres Clusters, 111122223333 durch Ihre AWS-Konto ID und eks-my-cluster-my-namespace-viewers durch den Namen einer IAM-Rolle.

aws eks update-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::111122223333:role/EKS-my-cluster-my-namespace-Viewers --kubernetes-groups Viewers

Die Option --kubernetes-groups kann nur verwendet werden, wenn der Zugriffseintrag den Typ STANDARD hat. Auch kann eine Zugriffsrichtlinie nur einem Zugriffseintrag mit dem Typ STANDARD zugeordnet werden.

Löschen von Zugriffseinträgen

Wenn Sie einen Zugriffseintrag versehentlich gelöscht haben, können Sie ihn jederzeit erneut erstellen. Wenn dem zu löschenden Zugriffseintrag Zugriffsrichtlinien zugeordnet sind, werden die Zuordnungen automatisch gelöscht. Es ist nicht erforderlich, die Zuordnung von Zugriffsrichtlinien zu einem Zugriffseintrag vor dem Löschen aufzuheben.

Sie können einen Zugriffseintrag AWS CLI mit dem oder dem löschen. AWS Management Console

AWS Management Console
So löschen Sie einen Zugriffseintrag
  1. Öffnen Sie die Amazon-EKS-Konsole unter https://console.aws.amazon.com/eks/home#/clusters.

  2. Wählen Sie den Namen des Clusters aus, aus dem Sie einen Zugriffseintrag löschen möchten.

  3. Wählen Sie die Registerkarte Zugriff aus.

  4. Wählen Sie in der Liste Zugriffseinträge den Zugriffseintrag aus, den Sie löschen möchten.

  5. Wählen Sie Löschen aus.

  6. Wählen Sie im Bestätigungs-Dialogfeld die Option Delete (Löschen).

AWS CLI
Voraussetzung

Version 2.12.3 oder höher oder Version 1.27.160 oder höher von AWS Command Line Interface (AWS CLI), die auf Ihrem Gerät installiert und konfiguriert ist, oder AWS CloudShell. Um Ihre aktuelle Version zu überprüfen, verwenden Sie aws --version | cut -d / -f2 | cut -d ' ' -f1. Paket-Manager wie yum, apt-get oder Homebrew für macOS sind oft mehrere Versionen hinter der neuesten Version von AWS CLI. Informationen zur Installation der neuesten Version von finden Sie unter Installation, Aktualisierung und Deinstallation der AWS CLI und Schnellkonfiguration mit aws configure im AWS Command Line Interface -Benutzerhandbuch. Die AWS CLI Version, in der installiert ist, AWS CloudShell kann auch mehrere Versionen hinter der neuesten Version liegen. Informationen zur Aktualisierung finden Sie unter Installation AWS CLI in Ihrem Home-Verzeichnis im AWS CloudShell Benutzerhandbuch.

So löschen Sie einen Zugriffseintrag

Ersetzen Sie my-cluster durch den Namen Ihres Clusters, 111122223333 durch Ihre AWS-Konto ID und my-role durch den Namen der IAM-Rolle, auf die Sie keinen Zugriff mehr auf Ihren Cluster haben möchten.

aws eks delete-access-entry --cluster-name my-cluster --principal-arn arn:aws:iam::111122223333:role/my-role