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 verwenden können. Nutzer können sich über die Befehlszeile oder über die Google Cloud Console bei Ihren GKE-Clustern anmelden und diese verwenden. Dabei verwenden Sie allesamt Ihren vorhandenen Identitätsanbieter.

Wenn Sie bereits Google-IDs anstelle eines OIDC- oder LDAP-Anbieters verwenden oder nutzen möchten, um sich bei Ihren GKE-Clustern anzumelden, finden Sie weitere Informationen unter Mit dem Connect-Gateway 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) Mit dem GKE Identity Service können Sie sich über LDAP mit Active Directory oder einem LDAP-Server 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 dem GKE Identity Service nicht unterstützt.

Funktionsweise

Mit GKE Identity Service können sich Nutzer mit ihrem üblichen Nutzernamen und Passwort für die Organisation in konfigurierten Clustern anmelden. Wie genau das funktioniert, hängt vom Typ des verwendeten Identitätsanbieters ab.

OIDC

Bei OIDC-Anbietern wird der GKE Identity Service selbst als Clientanwendung für den Identitätsanbieter registriert und dann vom Clusteradministrator für jeden Cluster 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 den GKE Identity Service, um das ID-Token zu validieren und den Zugriff auf den Cluster zuzulassen (oder abzulehnen). GKE Identity Service kann optional 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 für jeden Cluster vom Clusteradministrator 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 geht an den GKE Identity Service, der den LDAP-Server abfragt und die Nutzerattribute in einem kurzlebigen Token (STS) zurückgibt. Dadurch wird sichergestellt, dass die LDAP-Anmeldedaten des Nutzers nicht lokal als 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 den 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 GKE Identity Service entweder für jeden Cluster einzeln oder auf Projektflottenebene einrichten.

Clusterspezifische Einrichtung

Sie können GKE Identity Service Cluster für Cluster für lokale GKE-Cluster (sowohl VMware als auch Bare Metal), AWS und 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 ein 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 ein Entwickler oder ein anderer Clusternutzer sind und mit Ihrer vorhandenen Identität auf GKE-Cluster zugreifen möchten, lesen Sie Mit GKE Identity Service auf Cluster zugreifen.