Einführung in GKE Identity Service
GKE Identity Service ist ein Authentifizierungsdienst, mit dem Sie Ihre vorhandenen Identitätslösungen zur Authentifizierung in mehreren GKE Enterprise-Umgebungen nutzen können. Nutzer können sich über die Befehlszeile oder die Google Cloud Console bei Ihren GKE-Clustern anmelden und diese verwenden, indem Sie Ihren vorhandenen Identitätsanbieter verwenden.
Wenn Sie bereits Google-IDs für das Einloggen in Ihre GKE-Cluster anstelle eines OIDC- oder LDAP-Anbieters verwenden oder verwenden möchten, lesen Sie den Abschnitt Mit Gateway Connect eine Verbindung zu registrierten Clustern herstellen.
Unterstützte Identitätsanbieter
GKE Identity Service unterstützt Identitätsanbieter mit den folgenden Protokollen:
- OpenID Connect (OIDC). Für einige bekannte OpenID-Anbieter, darunter Microsoft, werden spezifische Informationen zur Einrichtung bereitgestellt. Sie können aber auch einen beliebigen Anbieter verwenden, der OIDC implementiert.
- Lightweight Directory Access Protocol (LDAP) Sie können GKE Identity Service verwenden, um sich mit LDAP bei Active Directory oder einem LDAP-Server zu authentifizieren.
- Security Assertion Markup Language (SAML). Sie können GKE Identity Service für die Authentifizierung mit SAML verwenden.
Unterstützte Clustertypen
Protokoll | GKE on VMware | GKE on Bare Metal | GKE on AWS | GKE on Azure | Mit EKS verknüpfte Cluster | GKE |
---|---|---|---|---|---|---|
OIDC | ||||||
LDAP | ||||||
SAML |
Andere angehängte Clustertypen werden für die Verwendung mit GKE Identity Service nicht unterstützt.
Funktionsweise
Mit GKE Identity Service können sich Nutzer mit dem üblichen Nutzernamen und Passwort der Organisation in konfigurierten Clustern anmelden. Wie genau das funktioniert, hängt vom Typ des verwendeten Identitätsanbieters ab.
OIDC
Bei OIDC-Anbietern wird GKE Identity Service selbst als Clientanwendung für den Identitätsanbieter registriert und dann für jeden Cluster vom Clusteradministrator eingerichtet.
Wenn sich ein Nutzer über die Befehlszeile in einem Cluster anmelden möchte, muss er zuerst einen gcloud anthos auth login
-Befehl ausführen und seine Anmeldedaten für den Identitätsanbieter eingeben. Damit wird ein Identitätstoken vom Anbieter abgerufen. Das Token wird seiner kubeconfig
-Datei hinzugefügt und verwendet, wenn Anfragen an kubectl
an den Cluster gesendet werden. Der Kubernetes API-Server verwendet dann GKE Identity Service, um das ID-Token zu validieren und den Zugriff auf den Cluster (oder den Zugriff) zuzulassen. GKE Identity Service kann optional auch Informationen zur Mitgliedschaft in Sicherheitsgruppen vom Identitätsanbieter abrufen.
Clusteradministratoren können bei Bedarf eine präzisere Zugriffssteuerung mithilfe der rollenbasierten Zugriffssteuerung (Role-Based Access Control, RBAC) von Kubernetes hinzufügen.
Nutzer können sich auch über OIDC in der Google Cloud Console anmelden. In diesem Fall werden sie an die Benutzeroberfläche des Identitätsanbieters weitergeleitet, um ihre Anmeldedaten anzugeben, bevor sie zur Google Cloud Console zurückgekehrt sind, um die Ressourcen des Clusters weiter ansehen und verwalten zu können.
LDAP
Bei LDAP-Anbietern wird GKE Identity Service vom Clusteradministrator für jeden Cluster eingerichtet. Dazu gehört auch die Bereitstellung von LDAP-Clientanmeldedaten für GKE Identity Service.
Wenn sich ein Nutzer über die Befehlszeile in einem Cluster anmelden möchte, muss er zuerst einen gcloud anthos auth login
-Befehl ausführen und seine Anmeldedaten für den Identitätsanbieter eingeben. Die Anfrage wird an den GKE Identity Service gesendet, der den LDAP-Server abfragt und die Nutzerattribute in einem kurzlebigen Token (STS) zurückgibt. Damit wird sichergestellt, dass die LDAP-Anmeldedaten des Nutzers nicht lokal im Klartext gespeichert werden müssen. Das Token wird seiner kubeconfig
-Datei hinzugefügt und verwendet, wenn Anfragen an kubectl
an den Cluster gesendet werden. Der Kubernetes API-Server verwendet dann GKE Identity Service, um die Nutzer- und Gruppeninformationen aus dem Token abzurufen und den Zugriff auf den Cluster zuzulassen (oder zu verweigern). Standardmäßig dauert es eine Stunde, bis sich der Nutzer neu anmelden muss.
Clusteradministratoren können bei Bedarf eine präzisere Zugriffssteuerung mithilfe der rollenbasierten Zugriffssteuerung (Role-Based Access Control, RBAC) von Kubernetes hinzufügen.
Einrichtungsoptionen
Je nach Clustertyp und Umgebung können Clusteradministratoren entweder GKE Identity Service für jeden Cluster einzeln oder auf Projektflottenebene einrichten.
Clusterspezifische Einrichtung
Sie können GKE Identity Service für Cluster lokal für GKE-Cluster (sowohl VMware als auch Bare-Metal) auf AWS und auf Azure einrichten. Ausführliche Informationen finden Sie in den folgenden Leitfäden:
OIDC-Einrichtung
- OIDC-Anbieter für GKE Identity Service konfigurieren
- Cluster für GKE Identity Service mit OIDC einrichten
- LINKNutzerzugriff für GKE Identity Service einrichten
LDAP-Setup
- LDAP-Anbieter für GKE Identity Service konfigurieren
- Cluster für GKE Identity Service mit LDAP einrichten
- LINKNutzerzugriff für GKE Identity Service einrichten
SAML-Einrichtung
- SAML-Anbieter für GKE Identity Service konfigurieren
- Cluster für GKE Identity Service mit SAML einrichten
- Nutzerzugriff auf GKE Identity Service über einen alternativen Authentifizierungsprozess einrichten
Einrichtung auf Flotten-Ebene
Eine Flotte in Google Cloud ist eine logische Gruppe von Clustern, mit der Sie Funktionen aktivieren und die Konfiguration in diesen Clustern aktualisieren können. Für unterstützte Clustertypen können Sie GKE Identity Service für die Cluster in der Flotte Ihres Projekts einrichten. Mit der Einrichtung auf Flottenebene können Sie die Authentifizierungskonfiguration zentral auf mehrere Cluster anwenden. Die Konfiguration wird dabei von Google Cloud verwaltet.
Die folgenden Clustertypen werden für die Einrichtung auf Flottenebene unterstützt:
- GKE on VMware, Version 1.8.2 oder höher
- GKE on Bare Metal, Version 1.8.3 oder höher
- GKE on Azure
- GKE on AWS, auf der Kubernetes 1.21 oder höher ausgeführt wird
- GKE-Cluster in Google Cloud mit aktiviertem Identity Service for GKE
Der folgende Clustertyp und die folgende Umgebung werden für die Einrichtung auf Flottenebene als Pre-GA-Feature unterstützt:
- Mit Amazon Elastic Kubernetes Service (Amazon EKS) verbundene Cluster
Weitere Informationen zur Einrichtung finden Sie hier:
Nächste Schritte
- Wenn Sie Plattformadministrator oder Clusteradministrator sind und Cluster für die Verwendung von GKE Identity Service konfigurieren möchten, folgen Sie den entsprechenden Einrichtungsleitfäden oben.
- Wenn Sie Entwickler oder ein anderer Cluster-Nutzer sind und mit Ihrer vorhandenen Identität auf GKE-Cluster zugreifen möchten, lesen Sie die Informationen unter Mit GKE Identity Service auf Cluster zugreifen.