Casi d'uso di autenticazione e autorizzazione

Questa pagina elenca alcuni casi d'uso comuni di 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.

Esegui l'autenticazione nelle API di Google

Le API Google richiedono un token di accesso o una chiave API validi per ogni richiesta. La modalità di indicazione di queste credenziali obbligatorie dipende da dove viene eseguito il codice e dai tipi di credenziali accettati dall'API.

Utilizzare le librerie client e le Credenziali predefinite dell'applicazione

Il modo consigliato per utilizzare le API di Google è utilizzare una libreria client e le 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 queste credenziali disponibili per le librerie client Cloud e le librerie client delle API di Google. Quando utilizzi ADC, il codice può essere eseguito in un ambiente di sviluppo o di produzione senza dover cambiare il modo in cui l'applicazione si autentica nei servizi e nelle API di Google Cloud.

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

Eseguire l'autenticazione da Google Kubernetes Engine (GKE)

Utilizza Workload Identity Federation for GKE per consentire ai carichi di lavoro in esecuzione su GKE di accedere in modo sicuro alle API di Google. La federazione delle identità per i carichi di lavoro per GKE consente a un account di servizio GKE nel tuo cluster GKE di fungere da account di servizio IAM (Identity and Access Management).

Eseguire l'autenticazione da Knative serving

Puoi autenticare i servizi di pubblicazione Knative utilizzando la federazione delle identità per i carichi di lavoro per GKE, che ti consente di accedere alle API di Google.

Utilizza un'API che accetta chiavi API

Le chiavi API associano una richiesta API a un progetto Google Cloud per scopi di fatturazione e quota. Se un'API supporta le chiavi API, al posto del token può essere fornita una chiave API con la richiesta API. Per determinare se un'API supporta le chiavi API, consulta la documentazione dell'API.

Utilizzare token web JSON (JWT) autofirmati

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

Utilizzare le librerie e i pacchetti di autenticazione

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

Sono disponibili le seguenti librerie e pacchetti di autenticazione:

Puoi anche implementare il flusso OAuth 2.0 utilizzando gli endpoint OAuth 2.0 di Google. Questo approccio richiede una conoscenza 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 per i servizi Google Cloud

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

Fornire accesso a tempo limitato a una risorsa Cloud Storage utilizzando URL firmati

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

Eseguire l'autenticazione ai cluster GKE Enterprise

Puoi autenticarti ai cluster GKE Enterprise utilizzando le identità di Google Cloud o un provider di identità di terze parti:

Configurare 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 service-to-service 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 Run Functions

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

Per ulteriori informazioni, consulta la documentazione del prodotto 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 sugli ID token, inclusa la loro convalida, consulta la sezione ID token.

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 in 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 mobile, utilizza Identity Platform o Firebase Authentication. Puoi anche utilizzare Identity-Aware Proxy (IAP) per autenticare gli utenti interni.

Funzioni Cloud Run

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

Autentica gli utenti dell'applicazione

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

Servizio di autenticazione Descrizione
Servizi di identità Google

Google Identity Services include Accedi con Google, il pulsante di accesso degli utenti di Google, nonché le API e l'SDK di Identity Services. Google Identity Services si basa sui protocolli OAuth 2.0 e OpenID Connect (OIDC).

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

Ulteriori informazioni

Accedi con Google consente di accedere agli account Gmail e Google Workspace e supporta le password monouso (OTP). La funzionalità Accedi con Google è destinata agli account solo Google o agli Account Google in un sistema di accesso esistente per le applicazioni mobile.

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 una vasta 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 si basano entrambi su Google Identity Services. Firebase Authentication è destinata alle applicazioni per consumatori. Identity Platform è ideale per gli utenti che vogliono essere il proprio fornitore di servizi di identità o che hanno bisogno della funzionalità di Identity Platform pronta per le aziende. Per ulteriori informazioni sulle differenze tra questi prodotti, consulta Differenze tra Identity Platform e Firebase Authentication.

I link riportati di seguito forniscono ulteriori informazioni:

Identity Platform

Identity Platform è una piattaforma di gestione di identità e accessi cliente (GIAC) che consente alle organizzazioni di aggiungere funzionalità di gestione di identità e accessi di livello enterprise alle loro applicazioni.

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

Ulteriori informazioni

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

Identity Platform e Firebase Authentication si basano entrambi su Google Identity Services. Firebase Authentication è destinata alle applicazioni per consumatori. Identity Platform è ideale per gli utenti che vogliono essere il proprio fornitore di servizi di identità o che hanno bisogno della funzionalità di Identity Platform pronta per le aziende. Per ulteriori informazioni sulle differenze tra questi prodotti, consulta Differenze tra Identity Platform e Firebase Authentication.

OAuth 2.0 e OpenID Connect

OpenID Connect ti 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 e ha la 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 per una risorsa protetta da Identity-Aware Proxy.

Identity-Aware Proxy (IAP)

IAP ti 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, che sono implementati all'interno dell'applicazione, l'IAP esegue l'autenticazione prima che l'applicazione possa essere raggiunta.

Ulteriori informazioni

Con IAP, puoi stabilire un livello di autorizzazione centrale per le applicazioni e utilizzare le intestazioni con firma per proteggere la tua app. Le applicazioni protette da IAP possono essere accessibili solo dalle entità con il ruolo IAM corretto. Quando un utente finale tenta di accedere a una risorsa protetta da IAP, IAP esegue per te i controlli di autenticazione e autorizzazione. IAP non protegge dalle attività all'interno di un progetto, ad esempio un altro servizio nello stesso progetto.

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

Per informazioni su come IAP protegge le risorse delle applicazioni, consulta la panoramica di IAP.

Per IAP sono disponibili i seguenti tutorial specifici per lingua:

API App Engine Users Per le applicazioni in esecuzione nell'ambiente standard di App Engine, è disponibile l'API Users per fornire la funzionalità di autenticazione degli utenti per alcuni linguaggi.
Autorizzazione dell'accesso per le risorse utente finale Se la tua applicazione accede a risorse di proprietà del tuo utente finale, devi ottenere la sua autorizzazione per farlo. Questo caso d'uso è talvolta chiamato OAuth a tre token 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 degli account e amministrarli.

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

Workload Identity Federation ti consente di grant ai carichi di lavoro on-premise o multi-cloud l'accesso alle risorse Google Cloud. In passato, questo caso d'uso richiedeva l'utilizzo di chiavi degli account di servizio, ma la federazione delle identità per i carichi di lavoro evita la manutenzione e il carico di sicurezza derivante dall'utilizzo di chiavi degli account di servizio. La federazione delle identità dei carichi di lavoro supporta provider di identità compatibili con OIDC o SAML 2.0.

Configurare 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 le loro credenziali e identità esistenti per accedere ai servizi Google.

Configurare 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 dopo aver ottenuto le credenziali. Con l'autenticazione a due fattori, è richiesta una seconda informazione o un secondo documento di identità dell'utente prima che l'autenticazione venga completata. Google offre diverse soluzioni che supportano lo standard FIDO (Fast Identity Online).

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

Google Identity Services supporta l'autenticazione FIDO (Fast IDentity Online).

Google supporta varie soluzioni hardware per l'autenticazione a due fattori, come le Titan Keys.

Configurare l'accesso basato su certificato

Componente della soluzione Zero Trust di Chrome Enterprise Premium, l'accesso basato su certificato limita l'accesso solo agli utenti autenticati su un dispositivo attendibile, identificando i dispositivi tramite i loro certificati X.509. L'accesso basato su certificato viene a volte definito anche mutual Transport Layer Security (mTLS).

Informazioni generali sull'account e sull'autenticazione

Ricevere assistenza per accedere a un Account Google

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

Gestire le credenziali compromesse

Se ritieni che le tue credenziali siano state compromesse, esistono passaggi che tu o il tuo amministratore potete seguire per attenuare la situazione. Per ulteriori informazioni, consulta la pagina Gestire le credenziali Google Cloud compromesse.

Ricevere assistenza per problemi relativi alle autorità di certificazione

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