Helfen Sie mit, diese Seite 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.
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 erstellen
Berücksichtigen Sie Folgendes, bevor Sie Zugriffseinträge erstellen:
-
Ein ordnungsgemäß eingestellter Authentifizierungsmodus. Siehe Ändern Sie den Authentifizierungsmodus, um Zugriffseinträge zu verwenden.
-
Ein Zugriffseintrag enthält den Amazon-Ressourcennamen (ARN) eines und nur eines vorhandenen IAM Prinzipals. Ein IAM Principal kann nicht in mehr als einem Zugriffseintrag enthalten sein. Zusätzliche Überlegungen zu demARN, den Sie angeben:
-
IAMIn den bewährten Methoden wird empfohlen, für den Zugriff auf Ihren Cluster IAM Rollen mit kurzfristigen Anmeldeinformationen anstelle von IAM Benutzern mit langfristigen Anmeldeinformationen zu verwenden. Weitere Informationen finden Sie im Benutzerhandbuch unter Erfordern, dass menschliche Benutzer einen Verbund mit einem Identitätsanbieter AWS verwenden müssen, um mit temporären Anmeldeinformationen darauf zugreifen zu IAM können.
-
Wenn der für eine IAM Rolle ARN ist, kann er einen Pfad enthalten. ARNsin
aws-auth
ConfigMap
Einträgen darf kein Pfad enthalten sein. Sie ARN können zum Beispielarn:aws: iam::<111122223333>:role/<development/apps/my-role>
oder seinarn:aws: iam::<111122223333>:role/<my-role>
. -
Wenn der Typ des Zugriffseintrags etwas anderes ist als
STANDARD
(siehe nächste Überlegung zu Typen), ARN müssen sie sich in demselben AWS Konto befinden, in dem sich Ihr Cluster befindet. Wenn der Typ istSTANDARD
, ARN können sie sich in demselben oder einem anderen Konto befinden als das AWS Konto, in dem sich Ihr Cluster befindet. -
Sie können den IAM Prinzipal nicht mehr ändern, nachdem der Zugriffseintrag erstellt wurde.
-
Wenn Sie den IAM Prinzipal damit jemals löschenARN, wird der Zugriffseintrag nicht automatisch gelöscht. Wir empfehlen, dass Sie den Zugriffseintrag mit einem ARN für einen IAM Prinzipal löschen, den Sie löschen. Wenn Sie den Zugriffseintrag nicht löschen und den IAM Prinzipal erneut erstellen, funktioniert der Zugriffseintrag nichtARN, auch wenn er denselben hat. Das liegt daran, dass, obwohl der für den neu erstellten IAM Prinzipal derselbe ARN ist, der
roleID
oderuserID
(Sie können das mit demaws sts get-caller-identity
AWS CLI Befehl sehen) für den neu erstellten IAM Prinzipal anders ist als für den ursprünglichen Prinzipal. IAM Auch wenn Sie denroleID
oderuserID
für einen Zugriffseintrag des IAM Prinzipals nicht sehen, EKS speichert Amazon ihn zusammen mit dem Zugriffseintrag.
-
-
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 eine mit AWS Fargate (Fargate) verwendete IAM Rolle),HYBRID_LINUX
(für eine IAM Rolle, die mit Hybridknoten verwendet wird) oder als Typ angeben.STANDARD
Wenn Sie keinen Typ angeben, setzt Amazon den Typ EKS automatisch aufSTANDARD
. Es ist nicht erforderlich, einen Zugriffseintrag für eine IAM Rolle zu erstellen, die für eine verwaltete Knotengruppe oder ein Fargate-Profil verwendet wird, da Amazon Einträge für diese Rollen EKS hinzufügtaws-auth
ConfigMap
, unabhängig davon, auf welcher Plattformversion sich Ihr Cluster befindet.Sie können den Typ nicht ändern, nachdem der Zugriffseintrag erstellt wurde.
-
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, EKS legt Amazon 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 Principal um eine IAM Rolle oder einen IAM Benutzer handelt. Sofern Sie keinen bestimmten Grund für die Angabe Ihres eigenen Benutzernamens haben, empfehlen wir, keinen anzugeben und Amazon ihn EKS automatisch für Sie generieren zu lassen. Beachten Sie bei Angabe eines eigenen Benutzernamens Folgendes:-
Es kann nicht mit
system:
,,eks:
aws:
amazon:
, oderiam:
beginnen. -
Wenn der Nutzername für eine IAM Rolle ist, empfehlen wir, dass du deinen Nutzernamen am Ende
{{SessionName}}
hinzufügst. Wenn du{{SessionName}}
zu deinem Nutzernamen etwas hinzufügst, muss der Nutzername einen Doppelpunkt vor {{SessionName}} enthalten. 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. Sie können beispielsweise keinen Benutzernamen von habenjohn{{SessionName}}
. Er müsste:john{{SessionName}}
oderjo:hn{{SessionName}}
lauten. Der Doppelpunkt muss sich nur vor{{SessionName}}
befinden. Der von Amazon EKS in der folgenden Tabelle generierte Benutzername enthält eineARN. Da ein ARN Doppelpunkt enthält, erfüllt es diese Anforderung. Der Doppelpunkt ist nicht erforderlich, wenn Sie ihn nicht{{SessionName}}
in Ihrem Benutzernamen angeben.IAMPrinzipaltyp Typ Wert für den Benutzernamen, den Amazon EKS automatisch festlegt Benutzer
STANDARD
Der ARN des Benutzers. Beispiel:
arn:aws: iam::<111122223333>:user/<my-user>
Rolle
STANDARD
Die Rolle, zu STS ARN der sie übernommen wurde. Amazon EKS fügt die Rolle
{{SessionName}}
hinzu.Beispiel:
arn:aws: sts::<111122223333>:assumed-role/<my-role>/{{SessionName}}
Wenn die ARN von Ihnen angegebene Rolle einen Pfad enthielt, EKS entfernt Amazon ihn aus dem generierten Benutzernamen.
Rolle
EC2_Linux
oderEC2_Windows
system:node:{{EC2PrivateDNSName}}
Rolle
FARGATE_LINUX
system:node:{{SessionName}}
Rolle
HYBRID_LINUX
system:node:{{SessionName}}
Sie können den Benutzernamen ändern, nachdem der Zugriffseintrag erstellt wurde.
-
-
Wenn der Typ eines Zugangseintrags ist
STANDARD
und Sie ihn verwenden möchten Kubernetes RBACAutorisierung: Sie können dem Zugriffseintrag einen oder mehrere Gruppennamen hinzufügen. Gruppennamen können nach der Erstellung eines Zugriffseintrags hinzugefügt und entfernt werden. Damit der IAM Schulleiter Zugriff hat Kubernetes Objekte in Ihrem Cluster müssen Sie erstellen und verwalten Kubernetes rollenbasierte Autorisierungsobjekte (RBAC). Erstellen KubernetesRoleBinding
oderClusterRoleBinding
Objekte in Ihrem Cluster, die den Gruppennamen alssubject
für angeben.kind: Group
Kubernetes autorisiert den IAM Prinzipalzugriff auf alle Clusterobjekte, die Sie in einem angegeben haben KubernetesRole
oderClusterRole
Objekt, das Sie auch in Ihren Bindungen angegeben haben.roleRef
Wenn Sie Gruppennamen angeben, empfehlen wir, dass Sie mit dem vertraut sind Kubernetes rollenbasierte Autorisierungsobjekte (RBAC). Weitere Informationen finden Sie unter Verwenden der RBAC Autorisierungim Kubernetes -Dokumentation. Wichtig
Amazon bestätigt EKS nicht, dass irgendwelche Kubernetes RBACObjekte, die in Ihrem Cluster existieren, enthalten alle Gruppennamen, die Sie angeben.
Anstelle von oder zusätzlich zu Kubernetes Autorisierung des IAM Hauptzugriffs auf Kubernetes Objekte in Ihrem Cluster, Sie können EKS Amazon-Zugriffsrichtlinien einem Zugriffseintrag zuordnen. Amazon EKS autorisiert IAM Principals zum Zugriff Kubernetes Objekte in Ihrem Cluster mit den in der Zugriffsrichtlinie festgelegten Berechtigungen. Sie können die Berechtigungen einer Zugriffsrichtlinie auf folgende Bereiche beschränken Kubernetes Namespaces, die Sie angeben. Für die Verwendung von Zugriffsrichtlinien ist keine Verwaltung erforderlich Kubernetes RBACObjekte. Weitere Informationen finden Sie unter Zugriffsrichtlinien mit Zugriffseinträgen verknüpfen.
-
Wenn Sie einen Zugriffseintrag mit dem Typ
EC2_Linux
oder erstellenEC2_Windows
, muss der IAM Prinzipal, der den Zugriffseintrag erstellt, über dieiam:PassRole
entsprechende Berechtigung verfügen. Weitere Informationen finden Sie im Benutzerhandbuch unter Erteilen von Benutzerberechtigungen zur Übergabe einer Rolle an einen AWS Dienst. IAM -
Ähnlich wie beim IAMStandardverhalten 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 zurückgesendet wurde. Sie müssen Ihre Anwendungen unter Berücksichtigung dieser potenziellen Verzögerungen konzipieren. Wir empfehlen, die Erstellung oder Aktualisierung von Zugriffseinträgen nicht in die kritischen, hochverfügbaren Codepfade Ihrer Anwendung aufzunehmen. 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.
-
Access-Einträge unterstützen keine dienstbezogenen Rollen. Sie können keine Zugriffseinträge erstellen, bei denen es sich bei dem Principal um eine dienstbezogene Rolle ARN handelt. Sie können dienstbezogene Rollen anhand ihrer Rollen identifizierenARN, die im folgenden Format angegeben sind
arn:aws: iam::*:role/aws-service-role/*
.
Sie können einen Zugriffseintrag mit dem AWS Management Console oder dem erstellen AWS CLI.
AWS Management Console
-
Öffnen Sie die EKSAmazon-Konsole
. -
Wählen Sie den Namen des Clusters aus, in dem Sie einen Zugriffseintrag erstellen möchten.
-
Wählen Sie die Registerkarte Zugriff aus.
-
Wählen Sie Zugriffseintrag erstellen aus.
-
Wählen Sie IAMals Principal eine bestehende IAM Rolle oder einen vorhandenen Benutzer aus. IAMIn bewährten Methoden wird empfohlen, für den Zugriff auf Ihren Cluster IAM Rollen mit kurzfristigen Anmeldeinformationen anstelle von IAM Benutzern mit langfristigen Anmeldeinformationen zu verwenden. Weitere Informationen finden Sie im Benutzerhandbuch unter Erfordern, dass menschliche Benutzer einen Verbund mit einem Identitätsanbieter AWS verwenden müssen, um mit temporären Anmeldeinformationen darauf zugreifen zu IAM können.
-
Wenn sich der Zugriffseintrag auf die Knotenrolle bezieht, die für selbstverwaltete EC2 Amazon-Knoten verwendet wird, wählen Sie EC2Linux oder EC2Windows aus. Übernehmen Sie andernfalls die Standardeinstellung (Standard).
-
Wenn Sie unter Typ die Option Standard ausgewählt haben, können Sie bei Bedarf unter Benutzername einen Benutzernamen angeben.
-
Wenn der von Ihnen gewählte Typ Standard ist und Sie diesen verwenden möchten Kubernetes RBACAutorisierung für den IAM Prinzipal, geben Sie einen oder mehrere Namen für Gruppen an. Wenn Sie keine Gruppennamen angeben und die EKS Amazon-Autorisierung verwenden möchten, können Sie in einem späteren Schritt oder nachdem der Zugriffseintrag erstellt wurde, eine Zugriffsrichtlinie zuordnen.
-
(Optional) Weisen Sie dem Zugriffseintrag unter Tags Beschriftungen zu. So können Sie beispielsweise ganz einfach nach allen Ressourcen mit dem gleichen Tag suchen.
-
Wählen Sie Weiter.
-
Wenn Sie auf der Seite Zugriffsrichtlinie hinzufügen den Typ Standard ausgewählt haben und Sie möchten, dass Amazon EKS den IAM Principal autorisiert, Berechtigungen für Kubernetes Objekte in Ihrem Cluster, führen Sie die folgenden Schritte aus. Klicken Sie andernfalls auf Next (Weiter).
-
Wählen Sie unter Richtlinienname eine Zugriffsrichtlinie aus. Sie können die Berechtigungen der Zugriffsrichtlinien nicht anzeigen, sie enthalten jedoch ähnliche Berechtigungen wie die in der Kubernetes
ClusterRole
Objekte, die auf den Benutzer gerichtet sind. Weitere Informationen finden Sie unter Benutzerrollen inder Kubernetes -Dokumentation. -
Wählen Sie eine der folgenden Optionen:
-
Cluster — Wählen Sie diese Option, wenn Amazon EKS den IAM Principal autorisieren soll, die in der Zugriffsrichtlinie festgelegten Berechtigungen für alle zu erhalten Kubernetes Objekte in Ihrem Cluster.
-
Kubernetes namespace — Wählen Sie diese Option, wenn Amazon EKS dem IAM Principal die Berechtigungen in der Zugriffsrichtlinie für alle gewähren soll. Kubernetes Objekte in einem bestimmten Kubernetes Namespace auf Ihrem Cluster. Geben Sie für Namespace den Namen des Kubernetes Namespace auf Ihrem Cluster. Wenn Sie zusätzliche Namespaces hinzufügen möchten, wählen Sie Neuen Namespace hinzufügen aus und geben Sie den Namespace-Namen ein.
-
-
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.
-
Wählen Sie Weiter.
-
-
Ü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
-
Installieren Sie den AWS CLI, wie unter Installation im Benutzerhandbuch für die AWS Befehlszeilenschnittstelle beschrieben.
-
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.
my-cluster
Ersetzen Sie ihn durch den Namen Ihres Clusters,111122223333
durch Ihre AWS Konto-ID undEKS-my-cluster-self-managed-ng-1
durch den Namen Ihrer IAMKnotenrolle. Wenn es sich bei Ihrer Knotengruppe um eine Windows-Knotengruppe handelt,EC2_Linux
ersetzen Sie sie durchEC2_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
Sie können die
--kubernetes-groups
Option nicht verwenden, wenn Sie einen anderen Typ als angebenSTANDARD
. Sie können diesem Zugriffseintrag keine Zugriffsrichtlinie zuordnen, da es sich bei seinem Typ um einen anderen Wert als handeltSTANDARD
. -
Erstellen Sie einen Zugriffseintrag, der eine IAM Rolle zulässt, die nicht für eine von Amazon EC2 selbst verwaltete Knotengruppe verwendet wird, die Sie möchten Kubernetes um den Zugriff auf Ihren Cluster mit zu autorisieren.
my-cluster
Ersetzen Sie es durch den Namen Ihres Clusters,111122223333
durch Ihre AWS Konto-ID undmy-role
durch den Namen Ihrer IAM Rolle.Viewers
Ersetzen Sie es durch den Namen einer Gruppe, die Sie in einem angegeben haben KubernetesRoleBinding
oderClusterRoleBinding
Objekt in Ihrem Cluster.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 wurde bereitgestellt, weil dies möglich ist. IAM Bewährte Methoden empfehlen jedoch, für den Zugriff auf Ihren Cluster IAM Rollen mit kurzfristigen Anmeldeinformationen anstelle von IAM Benutzern mit langfristigen Anmeldeinformationen zu verwenden. Weitere Informationen finden Sie im Benutzerhandbuch unter Erfordern, dass menschliche Benutzer den Verbund mit einem Identitätsanbieter AWS verwenden müssen, um mit temporären Anmeldeinformationen darauf zugreifen zu IAM können.
aws eks create-access-entry --cluster-name my-cluster --principal-arn arn:aws: iam::111122223333:user/my-user --type STANDARD --username my-user
Wenn Sie möchten, dass dieser Benutzer mehr Zugriff auf Ihren Cluster hat als die in der Kubernetes APIDiscovery-Rollen, dann müssen Sie dem Zugriffseintrag eine Zugriffsrichtlinie zuordnen, da die
--kubernetes-groups
Option nicht verwendet wird. Weitere Informationen finden Sie unter Zugriffsrichtlinien mit Zugriffseinträgen verknüpfen und APIDiscovery-Rollenim Kubernetes -Dokumentation.
-