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.

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.

Diagramm zum grundlegenden AIS-Ablauf

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.

Diagramm zum LDAP-AIS-Ablauf

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

LDAP-Setup

SAML-Einrichtung

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:

Der folgende Clustertyp und die folgende Umgebung werden für die Einrichtung auf Flottenebene als Pre-GA-Feature unterstützt:

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.