Workload Identity ti consente di assegnare l'autorizzazione e identità distinte e granulari per ogni applicazione nel tuo cluster. Workload Identity è il metodo consigliato per le applicazioni in esecuzione in GKE su AWS per accedere ai servizi AWS e Google Cloud .
In tutti i cluster GKE è abilitata l'identità del workload.
Service account Kubernetes
Workload Identity implementa la federazione delle identità, ovvero la delega di trust o ruoli a un provider esterno. Ogni cluster ha un provider OpenID Connect (OIDC) integrato. Quando un pod viene eseguito nel cluster, viene eseguito utilizzando un service account Kubernetes. Il pod può essere configurato per ottenere un token con credenziali di breve durata per il suo account di servizio Kubernetes utilizzando un volume di token del service account associato.
Provider OpenID Connect
Ogni cluster può fungere da provider OpenID Connect (OIDC). Con questo provider, puoi fornire le credenziali del account di servizio Kubernetes ai servizi che supportano la federazione delle identità utilizzando OIDC.
L'URI dell'emittente di questo provider funge anche da endpoint di rilevamento OIDC. I servizi possono utilizzare questo endpoint di rilevamento per ottenere il set di chiavi web JSON (JWKS), che fornisce informazioni sulla chiave pubblica che consentono di verificare le credenziali dell'account di servizio Kubernetes.
Google Cloud Pool e provider di identità IAM
Google Cloud IAM supporta la
federazione delle identità tramite OIDC.
Tutti i cluster GKE sono configurati come provider di identità nel
pool di identità del workload PROJECT_ID.svc.id.goog
.
Per ottenere il nome del pool di identità del workload e dei provider, consulta Utilizzare Workload Identity con Google Cloud.
Provider di identità AWS IAM
AWS IAM supporta la federazione delle identità tramite OIDC. Per accedere ad AWS utilizzando le identità dell'account di servizio di un workload, devi creare un provider OIDC in AWS IAM. Per impostazione predefinita, GKE su AWS non è configurato con un provider di identità per AWS IAM.
Alternative a Workload Identity
Esistono metodi alternativi per accedere ai servizi da GKE su AWS. Non consigliamo i seguenti metodi a causa di complicazioni.
Esporta le credenziali e archiviale come secret di Kubernetes. In questo caso, devi ruotare manualmente le credenziali archiviate sia in AWS IAM sia nel tuo cluster. Inoltre, se un malintenzionato ruba le credenziali, può sfruttarle.
Collega le credenziali alle istanze sottostanti dei pool di nodi. In questo caso, tutti i workload in esecuzione sullo stesso nodo condividono le credenziali, il che può comportare un insieme di autorizzazioni più ampio di quello di cui i workload potrebbero avere bisogno. Per bloccare l'accesso alle autorizzazioni di un'istanza, i cluster GKE bloccano l'accesso da un pod al servizio di metadati dell'istanza.
Passaggi successivi
- Utilizzo di Workload Identity con i servizi Google Cloud
- Utilizzo di Workload Identity con AWS
- Scopri di più sulla federazione delle identità per i workload