Casi d'uso relativi ad autenticazione e autorizzazione

Questa pagina elenca alcuni casi d'uso comuni relativi ad autenticazione e autorizzazione, con link a ulteriori informazioni su come implementare ciascun caso d'uso.

Per una panoramica dell'autenticazione in Google, consulta Autenticazione in Google.

Autenticazione nelle API di Google

Le API di Google richiedono un token di accesso o una chiave API validi per ogni richiesta. Il modo in cui fornisci queste credenziali obbligatorie dipende da dove viene eseguito il codice e dai tipi di credenziali accettati dall'API.

Utilizza le librerie client e le Credenziali predefinite dell'applicazione

Il modo consigliato per utilizzare le API di Google è utilizzare una libreria client e Credenziali predefinite dell'applicazione (ADC). Application Default Credentials (ADC) è una strategia utilizzata dalle librerie di autenticazione per trovare automaticamente le credenziali in base all'ambiente dell'applicazione. Le librerie di autenticazione rendono disponibili queste credenziali per le librerie client di Cloud e le librerie client delle API di Google. Quando utilizzi ADC, il tuo codice può essere eseguito in un ambiente di sviluppo o di produzione senza modificare il modo in cui l'applicazione esegue l'autenticazione ai servizi e alle API Google Cloud.

La modalità di configurazione di ADC dipende da dove viene eseguito il codice. ADC supporta sia l'autenticazione come account di servizio sia l'autenticazione come utente.

Autenticazione da Google Kubernetes Engine (GKE)

Puoi utilizzare Workload Identity per consentire ai carichi di lavoro in esecuzione su GKE di accedere in modo sicuro alle API di Google. Workload Identity consente a un account di servizio GKE nel cluster GKE di agire come account di servizio Identity and Access Management (IAM).

Esegui l'autenticazione da Knative serving

Autentichi i servizi Knative serving utilizzando Workload Identity, che ti consente di accedere alle API di Google.

Utilizza un'API che accetta le chiavi API

Le chiavi API associano una richiesta API a un progetto Google Cloud ai fini della fatturazione e delle quote. Se un'API supporta le chiavi API, è possibile fornire una chiave API con la richiesta API anziché il token. Per determinare se un'API supporta le chiavi API, consulta la documentazione dell'API.

Utilizza token web JSON autofirmati (JWT)

Alcune API di Google supportano i token web JSON (JWT) autofirmati anziché i token di accesso. L'utilizzo di un JWT autofirmato consente di evitare di effettuare una richiesta di rete al server di autorizzazione di Google. Questo approccio richiede la creazione di un JWT firmato. Per ulteriori informazioni sui token, consulta la pagina Tipi di token.

Utilizza le librerie e i pacchetti di autenticazione

Se l'implementazione di ADC e di OAuth fornita dalle librerie client di Cloud o dalle librerie client delle API di Google non è disponibile nel tuo ambiente, puoi utilizzare le librerie e i pacchetti di autenticazione.

Sono disponibili i seguenti pacchetti e librerie di autenticazione:

Puoi anche implementare il flusso OAuth 2.0 utilizzando gli endpoint OAuth 2.0 di Google. Questo approccio richiede una comprensione più dettagliata del funzionamento di OAuth 2.0 e OpenID Connect. Per ulteriori informazioni, consulta Utilizzo di OAuth 2.0 per applicazioni server web.

Casi d'uso specifici dei servizi Google Cloud

Alcuni servizi Google Cloud supportano flussi di autenticazione specifici per quel servizio.

Fornisci accesso limitato nel tempo a una risorsa Cloud Storage utilizzando URL firmati

Gli URL firmati forniscono accesso limitato nel tempo a una risorsa Cloud Storage specifica.

Autenticazione nei cluster GKE Enterprise

Puoi eseguire l'autenticazione nei cluster GKE Enterprise utilizzando le identità Google Cloud o un provider di identità di terze parti:

Configura un'API di cui è stato eseguito il deployment con API Gateway o Cloud Endpoints per l'autenticazione

API Gateway e Cloud Endpoints supportano l'autenticazione da servizio a servizio e l'autenticazione utente con Firebase, token ID firmati da Google, Okta, Auth0 e JWT.

Per informazioni, consulta la documentazione del prodotto:

Autenticazione per le applicazioni ospitate su Cloud Run o Cloud Functions

Le applicazioni ospitate su Cloud Run e Cloud Functions richiedono token OpenID Connect (OIDC) o token ID, per l'autenticazione.

Per ulteriori informazioni, consulta la documentazione dei prodotti per i servizi di hosting elencati di seguito. Per informazioni su altri modi per acquisire un token ID, consulta Ottenere un token ID. Per ulteriori informazioni sui token ID, inclusa la convalida dei token ID, consulta la sezione Token ID.

Cloud Run

Esistono diversi modi per configurare un servizio Cloud Run, a seconda di come verrà richiamato il servizio. Potresti anche dover eseguire l'autenticazione ad altri servizi da un servizio Cloud Run, che richiede un token ID OIDC.

Per autenticare gli utenti al tuo servizio da un'app web o per dispositivi mobili, utilizza Identity Platform o Firebase Authentication. Puoi anche utilizzare Identity-Aware Proxy (IAP) per autenticare gli utenti interni.

Cloud Functions

Quando richiami una funzione, devi autenticare la chiamata. Puoi utilizzare le credenziali utente o un token ID OIDC.

Autentica gli utenti dell'applicazione

Esistono varie opzioni per autenticare gli utenti finali della tua applicazione, a seconda del resto dell'ambiente applicativo. Utilizza le descrizioni riportate di seguito per capire qual è l'opzione migliore per la tua applicazione.

Servizio di autenticazione Descrizione
Servizi di identità Google

I servizi di identità Google includono Accedi con Google, il pulsante Accedi con gli utenti di Google, nonché API e SDK di Identity Services. I servizi di identità Google si basano sui protocolli OAuth 2.0 e OpenID Connect (OIDC).

Se stai creando un'applicazione mobile e vuoi autenticare gli utenti utilizzando account Gmail e Google Workspace, la funzionalità Accedi con Google potrebbe essere una buona soluzione. Accedi con Google supporta anche l'utilizzo di Account Google con un sistema di accesso esistente.

Ulteriori informazioni

Accedi con Google offre l'accesso agli account Gmail e Google Workspace e assistenza per le password monouso (OTP). La funzionalità Accedi con Google è destinata solo agli Account Google o agli Account Google in un sistema di accesso esistente per le app mobile.

La funzionalità Accedi con Google è disponibile per iOS, Android e applicazioni web.

Firebase Authentication

Firebase Authentication fornisce librerie e servizi di autenticazione per autenticare gli utenti nella tua applicazione per un'ampia gamma di tipi di account utente.

Se vuoi accettare gli accessi degli utenti da più piattaforme, Firebase Authentication potrebbe essere una buona opzione.

Ulteriori informazioni

Firebase Authentication fornisce funzionalità di autenticazione per molti tipi di account utente. Firebase Authentication supporta l'autenticazione tramite password e l'accesso federato con Google, Facebook, Twitter e altre piattaforme.

Identity Platform e Firebase Authentication sono entrambi basati sui servizi di identità Google. Firebase Authentication è rivolto alle applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere il proprio provider di identità o che hanno bisogno delle funzionalità di livello enterprise offerte da Identity Platform. Per ulteriori informazioni sulle differenze tra questi prodotti, consulta Differenze tra Identity Platform e Firebase Authentication.

I seguenti link forniscono ulteriori informazioni:

Identity Platform

Identity Platform è una piattaforma di gestione di identità e accessi cliente (GIAC) che aiuta le organizzazioni ad aggiungere alle proprie applicazioni funzionalità di gestione di identità e accessi di livello aziendale.

Se stai creando un'applicazione da utilizzare con un provider di identità Google come Google Workspace o con un tuo servizio di gestione di identità e accessi, Identity Platform potrebbe essere una buona opzione.

Ulteriori informazioni

Identity Platform fornisce un servizio di identità e autenticazione personalizzabile e integrato per la registrazione e l'accesso degli utenti. Identity Platform supporta diversi metodi di autenticazione: SAML, OIDC, email/password, social, telefonica e personalizzate.

Identity Platform e Firebase Authentication sono entrambi basati sui servizi di identità Google. Firebase Authentication è rivolto alle applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere il proprio provider di identità o che hanno bisogno delle funzionalità di livello enterprise offerte da Identity Platform. Per ulteriori informazioni sulle differenze tra questi prodotti, consulta Differenze tra Identity Platform e Firebase Authentication.

OAuth 2.0 e OpenID Connect

OpenID Connect consente di gestire e utilizzare i token di autenticazione con la massima personalizzazione.

Se vuoi il massimo controllo sull'implementazione di OAuth 2.0 e hai dimestichezza con l'implementazione dei flussi OAuth 2.0, prendi in considerazione questa opzione.

Ulteriori informazioni

L'implementazione OAuth 2.0 di Google è conforme alla specifica OpenID Connect ed è certificazione OpenID. OpenID Connect è un livello di identità sovrapposto al protocollo OAuth 2.0. La tua applicazione può utilizzare OpenID Connect per convalidare il token ID e recuperare le informazioni del profilo dell'utente.

OAuth 2.0 può essere utilizzato per implementare l'autenticazione programmatica in una risorsa protetta da Identity-Aware Proxy.

Identity-Aware Proxy (IAP)

IAP consente di controllare l'accesso alla tua applicazione prima che le richieste raggiungano le risorse dell'applicazione.

A differenza degli altri servizi di autenticazione in questa tabella, implementati all'interno dell'applicazione, IAP esegue l'autenticazione prima che l'applicazione possa essere raggiunta.

Ulteriori informazioni

Con IAP, stabilisci un livello di autorizzazione centrale per le applicazioni e utilizzi intestazioni firmate per proteggere la tua app. Alle applicazioni protette da IAP sono accessibili solo le entità con il ruolo IAM corretto. Quando un utente finale tenta di accedere a una risorsa protetta da IAP, IAP esegue controlli di autenticazione e autorizzazione per tuo conto. IAP non protegge dalle attività all'interno di un progetto, ad esempio un altro servizio nello stesso progetto.

Per le identità Google, IAP utilizza i token ID. Per maggiori informazioni, consulta Autenticazione programmatica.

Per informazioni su come IAP protegge le risorse dell'applicazione, consulta la panoramica di IAP.

Per IAP sono disponibili i seguenti tutorial specifici dei linguaggi:

API App Engine Users Per le applicazioni in esecuzione nell'ambiente standard App Engine, è disponibile l'API Users per fornire la funzionalità di autenticazione degli utenti per alcune lingue.
Autorizzazione dell'accesso per le risorse degli utenti finali Se la tua applicazione accede a risorse di proprietà del tuo utente finale, devi proteggerne l'autorizzazione. Questo caso d'uso a volte è chiamato OAuth a tre vie o 3LO perché sono coinvolte tre entità: l'applicazione, il server di autorizzazione e l'utente.

Opzioni di autenticazione e autorizzazione per Google Cloud e Google Workspace

Google Cloud e Google Workspace offrono varie opzioni per configurare l'accesso, migliorare la sicurezza e amministrare gli account.

Concedi l'accesso alle risorse Google Cloud per i carichi di lavoro esterni

La federazione delle identità per i carichi di lavoro consente di concedere ai carichi di lavoro on-premise o multi-cloud l'accesso alle risorse di Google Cloud. In passato, questo caso d'uso richiedeva l'uso di chiavi degli account di servizio, ma la federazione delle identità per i carichi di lavoro evita la manutenzione e il carico della sicurezza derivanti dall'utilizzo delle chiavi degli account di servizio. La federazione delle identità per i carichi di lavoro supporta molti provider di identità compatibili con OIDC o compatibili con SAML 2.0. I provider di identità supportati includono AWS, Azure Active Directory, Active Directory on-premise, Okta, GitHub Actions e cluster Kubernetes.

Configura un provider di identità

Puoi utilizzare Google come provider di identità tramite Cloud Identity o Google Workspace. Puoi anche federare un account Cloud Identity o Google Workspace con un provider di identità esterno. Questo approccio utilizza SAML, consentendo ai dipendenti di utilizzare la loro identità e le loro credenziali esistenti per accedere ai servizi Google.

Configura l'autenticazione a due fattori

Richiedere l'autenticazione a due fattori è una best practice che aiuta a impedire ai malintenzionati di accedere a un account quando hanno ottenuto l'accesso alle relative credenziali. Con l'autenticazione a due fattori, è necessaria una seconda informazione o identificazione da parte dell'utente per autenticarlo. Google offre diverse soluzioni che supportano lo standard FIDO (Fast IDentity Online).

Identity Platform supporta l'autenticazione a due fattori per le app web, iOS e Android.

I Servizi di identità Google supportano l'autenticazione FIDO (Fast IDentity Online).

Google supporta varie soluzioni hardware per l'autenticazione a due fattori, tra cui le chiavi Titan.

Configura l'accesso basato su certificati

Parte della soluzione Zero Trust di Chrome Enterprise Premium, l'accesso basato su certificati limita l'accesso ai soli utenti autenticati su un dispositivo attendibile, identificando i dispositivi tramite i certificati X.509. L'accesso basato su certificati è talvolta definito anche mTLS (mutual Transport Layer Security).

Informazioni generali sull'account e sull'autenticazione

Assistenza per l'accesso a un Account Google

Se hai bisogno di aiuto per accedere a un Account Google o gestirlo, consulta la pagina di assistenza per l'Account Google.

Gestire le credenziali compromesse

Se ritieni che le tue credenziali siano state compromesse, tu o il tuo amministratore potete intraprendere alcuni passaggi per mitigare la situazione. Per ulteriori informazioni, consulta Gestione delle credenziali Google Cloud compromesse.

Assistenza per i problemi delle autorità di certificazione

Se riscontri errori relativi a un problema con il certificato o l'autorità di certificazione (CA), inclusa la tua CA radice, consulta le Domande frequenti su Google Trust Services per ulteriori informazioni.