Identità per i carichi di lavoro

Google Cloud fornisce i seguenti tipi di identità per i workload:

  • Workload Identity Federation e Workload Identity Federation per GKE consentono ai tuoi carichi di lavoro di accedere alla maggior parte dei servizi Google Cloud utilizzando identità federate che vengono autenticati tramite un provider di identità (IdP) esterno. Dopo che Google Cloud ha autenticato l'identità come entità, quest'ultima può accedere alle risorse utilizzando i ruoli IAM che concedi.

    Puoi utilizzare la federazione delle identità per i carichi di lavoro su Google Cloud o su carichi di lavoro esterni eseguiti su piattaforme come AWS, Azure, GitHub e GitLab.

    Puoi utilizzare la federazione delle identità per i carichi di lavoro per GKE con i carichi di lavoro in esecuzione nei cluster GKE per conceder loro l'accesso alle risorse di Google Cloud.

  • Gli account di servizio Google Cloud possono fungere da identità per i carichi di lavoro negli ambienti di produzione. Anziché concedere l'accesso direttamente a un carico di lavoro, concedi l'accesso a un account di servizio e poi fai in modo che il carico di lavoro utilizzi l'account di servizio come identità.

  • Le identità di carico di lavoro gestite (anteprima) ti consentono di associare identità fortemente attestate ai carichi di lavoro Compute Engine. Puoi utilizzare le identità di carico di lavoro gestite per autenticare i tuoi carichi di lavoro con altri carichi di lavoro utilizzando TLS reciproca (mTLS), ma non puoi utilizzarle per l'autenticazione alle API Google Cloud.

I tipi di identità che puoi utilizzare per i carichi di lavoro e il modo in cui li configurerai dipendono da dove vengono eseguiti.

Workload su Google Cloud

Se esegui carichi di lavoro su Google Cloud, puoi utilizzare i seguenti metodi per configurare le identità per i tuoi carichi di lavoro:

  • Service account collegati
  • Workload Identity Federation for GKE (solo per i workload in esecuzione su Google Kubernetes Engine)
  • Identità per i workload gestite (per i workload in esecuzione solo su Compute Engine)
  • Chiavi account di servizio

Service account collegati

Per alcune risorse Google Cloud, puoi specificare un account di servizio gestito dall'utente che la risorsa utilizza come identità predefinita. Questa procedura è nota come aggancio dell'account di servizio alla risorsa o associazione dell'account di servizio alla risorsa. Quando il codice in esecuzione nella risorsa accede ai servizi e alle risorse Google Cloud, utilizza l'account di servizio collegato alla risorsa come identità. Ad esempio, se colleghi un account di servizio a un'istanza Compute Engine e le applicazioni nell'istanza utilizzano una libreria client per chiamare le API Google Cloud, queste applicazioni utilizzeranno automaticamente l'account di servizio collegato per l'autenticazione e l'autorizzazione.

Nella maggior parte dei casi, devi collegare un account di servizio a una risorsa quando la crei. Una volta creata la risorsa, non puoi modificare l'account di servizio collegato alla risorsa. Le istanze Compute Engine fanno eccezione a questa regola. Puoi modificare l'account di servizio associato a un'istanza in base alle tue esigenze.

Per scoprire di più, vedi Collegare un account di servizio a una risorsa.

Workload Identity Federation for GKE

Per i carichi di lavoro eseguiti su GKE, Workload Identity Federation for GKE ti consente di concedere ruoli IAM a insiemi distinti e granulari di entità per ogni applicazione nel cluster. La federazione delle identità per i carichi di lavoro per GKE consente agli account di servizio Kubernetes nel tuo cluster GKE di accedere direttamente alle risorse Google Cloud utilizzando la federazione delle identità della forza lavoro o indirettamente utilizzando la simulazione dell'identità dell'account di servizio IAM.

Utilizzando l'accesso diretto alle risorse, puoi concedere i ruoli IAM all'identità dell'account di servizio Kubernetes direttamente sulle risorse del servizio Google Cloud. La maggior parte delle API Google Cloud supporta l'accesso diretto alle risorse. Tuttavia, quando utilizzi la federazione delle identità, alcuni metodi API potrebbero avere limitazioni. Per un elenco di queste limitazioni, consulta Prodotti supportati e limitazioni.

In alternativa, i carichi di lavoro possono utilizzare anche l'impersonazione dell'account di servizio, in cui l'account di servizio Kubernetes configurato è associato a un account di servizio IAM, che funge da identità per accedere alle API Google Cloud.

Per scoprire di più su Workload Identity Federation per GKE, consulta Workload Identity Federation per GKE.

Identità dei workload gestiti

Le identità del carico di lavoro gestite ti consentono di associare identità fortemente attestate ai tuoi carichi di lavoro Compute Engine. Puoi utilizzare le identità di carico di lavoro gestite per autenticare i tuoi carichi di lavoro con altri carichi di lavoro utilizzando mTLS, ma non puoi utilizzarle per l'autenticazione alle API Google Cloud.

Per scoprire di più sulle identità del workload gestite, consulta Panoramica delle identità del workload gestite.

Per scoprire di più sull'utilizzo delle identità di carico di lavoro gestite con i carichi di lavoro Compute Engine, consulta Autenticare i carichi di lavoro con altri carichi di lavoro tramite mTLS.

Workload esterni

Se esegui carichi di lavoro al di fuori di Google Cloud, puoi utilizzare i seguenti metodi per configurare le identità per i tuoi carichi di lavoro:

  • Federazione delle identità per i workload
  • Chiavi account di servizio

Federazione delle identità per i workload

La federazione delle identità dei carichi di lavoro ti consente di utilizzare le credenziali di provider di identità esterni come AWS e Azure Active Directory per generare credenziali di breve durata, che i carichi di lavoro possono utilizzare per rubare temporaneamente l'identità degli account di servizio. I carichi di lavoro possono quindi accedere alle risorse Google Cloud utilizzando l'account di servizio come identità.

La federazione delle identità per i carichi di lavoro è il modo migliore per configurare le identità per i carichi di lavoro esterni.

Per scoprire di più sulla federazione di Workload Identity, consulta Federazione di Workload Identity.

Chiavi account di servizio

Una chiave dell'account di servizio consente a un carico di lavoro di autenticarsi come account di servizio, quindi di utilizzare l'identità dell'account di servizio per l'autorizzazione.

Sviluppo locale

Se esegui lo sviluppo in un ambiente locale, puoi configurare i carichi di lavoro in modo che utilizzino le tue credenziali utente o un account di servizio per l'autenticazione e l'autorizzazione. Per saperne di più, consulta Ambiente di sviluppo locale nella documentazione sull'autenticazione.

Passaggi successivi