Mit Workload Identity können Sie jeder Anwendung in Ihrem Cluster separate, detaillierte Identitäten und Autorisierungen zuweisen. Workload Identity ist die empfohlene Methode für Anwendungen, die in GKE on AWS ausgeführt werden, um auf AWS- und Google Cloud -Dienste zuzugreifen.
Bei allen GKE-Clustern ist Workload Identity aktiviert.
Kubernetes-Dienstkonten
Workload Identity implementiert die Identitätsföderation oder das delegieren von Vertrauensstellungen oder Rollen an einen externen Anbieter. Jeder Cluster hat einen integrierten OIDC-Anbieter (Open ID Connect). Wenn ein Pod im Cluster ausgeführt wird, wird er mit einem Kubernetes-Dienstkonto ausgeführt. Der Pod kann so konfiguriert werden, dass er mit einem gebundenen Dienstkonto-Token-Volume ein Token mit kurzlebigen Anmeldedaten für sein Kubernetes-Dienstkonto abruft.
Open ID Connect-Anbieter
Jeder Cluster kann als OIDC-Anbieter (Open ID Connect) fungieren. Mit diesem Anbieter können Sie Anmeldedaten für Kubernetes-Dienstkonto für Dienste bereitstellen, die die Identitätsföderation mit OIDC unterstützen.
Der Aussteller-URI dieses Anbieters dient auch als OIDC-Discovery-Endpunkt. Dienste können diesen Discovery-Endpunkt verwenden, um das JSON Web Key Set (JWKS) abzurufen. Dieses stellt Informationen zum öffentlichen Schlüssel bereit, mit denen sie die Anmeldedaten des Kubernetes-Dienstkontos überprüfen können.
Google Cloud IAM-Identitätspools und ‑Anbieter
Google Cloud IAM unterstützt die Identitätsföderation über OIDC.
Alle GKE-Cluster werden als Identitätsanbieter im Workload Identity-Pool PROJECT_ID.svc.id.goog
konfiguriert.
Informationen zum Abrufen des Namens des Workload Identity-Pools und der Anbieter finden Sie unter Workload Identity mit Google Cloudverwenden.
AWS-IAM-Identitätsanbieter
IAM unterstützt die Identitätsföderation über OIDC. Für den Zugriff auf AWS über die Dienstkontoidentitäten einer Arbeitslast müssen Sie einen OIDC-Anbieter in AWS IAM erstellen. Standardmäßig sind GKE on AWS-Cluster nicht mit einem Identitätsanbieter für AWS IAM konfiguriert.
Alternativen zu Workload Identity
Es gibt alternative Methoden, um von GKE on AWS auf Dienste zuzugreifen. Die folgenden Methoden werden aufgrund von Komplikationen nicht empfohlen.
Anmeldedaten exportieren und als Kubernetes-Secrets speichern. In diesem Fall müssen Sie gespeicherte Anmeldedaten manuell in AWS IAM und in Ihrem Cluster rotieren. Wenn ein Angreifer Anmeldedaten stiehlt, kann er sie ausnutzen.
Anmeldedaten an die zugrunde liegenden Instanzen der Knotenpools anhängen. In diesem Fall werden die Anmeldedaten von allen Arbeitslasten, die auf demselben Knoten ausgeführt werden, gemeinsam genutzt. Dies kann zu mehr Berechtigungen führen, als Arbeitslasten benötigen. GKE-Cluster blockieren den Zugriff von einem Pod auf den Instanzmetadatendienst, um den Zugriff auf die Berechtigungen einer Instanz zu blockieren.
Nächste Schritte
- Workload Identity mit Google Cloud-Diensten verwenden
- Workload Identity mit AWS verwenden
- Mehr über die Workload Identity-Föderation erfahren