Casi d'uso per autenticazione e autorizzazione

Questa pagina elenca alcuni casi d'uso comuni di autenticazione e autorizzazione, con link a ulteriori informazioni su come implementare ogni 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 tuo codice e dai tipi di credenziali accettati dall'API.

Usa 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 di Google per trovare automaticamente le credenziali in base all'ambiente applicativo. Le librerie di autenticazione rendono queste credenziali disponibili alle librerie client di Cloud e alle librerie client delle API di Google. Quando utilizzi ADC, il tuo codice può essere eseguito in un ambiente di sviluppo o di produzione senza cambiare il modo in cui l'applicazione viene autenticata ai servizi e alle API di Google Cloud.

La 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 tuo cluster GKE di agire come account di servizio IAM (Identity and Access Management).

Autenticazione dalla gestione di Knative

Per autenticare i servizi di pubblicazione Knative, utilizza Workload Identity, che ti consente di accedere alle API di Google.

Utilizza un'API che accetti le chiavi API

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

Utilizzare token JWT (JSON Web Tokens) autofirmati

Alcune API di Google supportano i token JWT (JSON Web Tokens) 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 la creazione di un JWT firmato. Per ulteriori informazioni sui token, consulta la sezione Tipi di token.

Utilizzare le librerie e i pacchetti di autenticazione

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

Sono disponibili i pacchetti e le librerie di autenticazione seguenti:

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 maggiori 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 un accesso limitato nel tempo a una risorsa Cloud Storage utilizzando URL firmati

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

Autentica 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 service-to-service e l'autenticazione utente con Firebase, token ID firmati da Google, Okta, Auth0 e JWT.

Per ulteriori 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 i token OpenID Connect (OIDC) o token ID per l'autenticazione.

Per ulteriori informazioni, consulta la documentazione del prodotto relativa ai 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, inclusi i token ID di convalida, consulta la sezione Token ID.

Cloud Run

Esistono vari modi per configurare un servizio Cloud Run, a seconda di come verrà richiamato il servizio. Potrebbe anche essere necessario 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 mobile, 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 comprendere 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 di accesso utente di Google, nonché le API e l'SDK di Identity Services. I servizi di identità Google sono basati 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, Accedi con Google potrebbe essere una buona soluzione. Accedi con Google supporta anche l'utilizzo degli Account Google con un sistema di accesso esistente.

Ulteriori informazioni

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

Accedi con Google è disponibile per iOS, Android e per le 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 soluzione.

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 ha come target le applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere il proprio provider di identità o che hanno bisogno della funzionalità di livello enterprise fornita da Identity Platform. Per saperne di più 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 per la gestione di identità e accessi del 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 il 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, telefono e opzioni personalizzate.

Identity Platform e Firebase Authentication sono entrambi basati sui servizi di identità Google. Firebase Authentication ha come target le applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere il proprio provider di identità o che hanno bisogno della funzionalità di livello enterprise fornita da Identity Platform. Per saperne di più 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 il massimo livello di 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 è certificata OpenID. OpenID Connect è un livello di identità superiore al protocollo OAuth 2.0. La tua applicazione può utilizzare OpenID Connect per convalidare il token ID e recuperare le informazioni del profilo utente.

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

Identity-Aware Proxy (IAP)

IAP consente di controllare l'accesso all'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, puoi stabilire un livello di autorizzazione centrale per le applicazioni e utilizzare le intestazioni firmate per proteggere l'app. Le applicazioni protette da IAP sono accessibili solo alle entità con il ruolo IAM corretto. Quando un utente finale tenta di accedere a una risorsa protetta da IAP, IAP esegue automaticamente i controlli di autenticazione e autorizzazione. IAP non protegge dall'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 delle applicazioni, consulta la panoramica di IAP.

Per IAP sono disponibili i seguenti tutorial specifici per i linguaggi:

API App Engine Users Per le applicazioni in esecuzione nell'ambiente standard di App Engine, è disponibile l'API Users, che fornisce la funzionalità di autenticazione utente per alcune lingue.
Autorizzazione dell'accesso per le risorse dell'utente finale Se la tua applicazione accede a risorse di proprietà dell'utente finale, devi assicurarti la sua autorizzazione. Questo caso d'uso è talvolta denominato 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.

Concedere 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 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 legati all'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 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à utilizzando Cloud Identity o Google Workspace. Puoi anche federe un account Cloud Identity o Google Workspace con un provider di identità esterno. Questo approccio utilizza SAML, consentendo ai dipendenti di utilizzare la propria identità e le credenziali esistenti per accedere ai servizi Google.

Configura l'autenticazione a due fattori

La richiesta dell'autenticazione a due fattori è una best practice che aiuta a impedire a malintenzionati di accedere a un account dopo aver ottenuto l'accesso alle credenziali di tale account. Con l'autenticazione a due fattori, è necessaria una seconda informazione o identificazione da parte dell'utente prima dell'autenticazione. 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, ad esempio le chiavi Titan.

Configura l'accesso basato su certificati

Parte della soluzione Zero Trust di BeyondCorp Enterprise, l'accesso basato su certificati limita l'accesso solo agli utenti autenticati su un dispositivo attendibile, identificando i dispositivi tramite i relativi certificati X.509. L'accesso basato su certificati è talvolta indicato anche come mTLS (mutual Transport Layer Security).

Informazioni generali sull'account e sull'autenticazione

Ricevere assistenza per accedere a un Account Google

Se hai bisogno di aiuto per accedere o gestire un Account Google, visita 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 adottare alcune misure per mitigare la situazione. Per saperne di più, consulta Gestire le credenziali Google Cloud compromesse.

Ricevere assistenza per i problemi relativi all'autorità di certificazione

Se vengono visualizzati errori relativi a un problema del certificato o dell'autorità di certificazione (CA), inclusa la CA radice, leggi le domande frequenti su Google Trust Services per avere ulteriori informazioni.