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 la pagina 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 accettate dall'API.
Utilizza le librerie client e le Credenziali predefinite dell'applicazione
Il metodo consigliato per utilizzare le API di Google consiste nell'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 delle applicazioni. 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 modificare il modo in cui l'applicazione viene autenticata nei servizi e nelle API di 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 tuoi 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 Identity and Access Management (IAM).
Autenticazione da Cloud Run for Anthos
Autentichi i servizi Cloud Run for Anthos utilizzando Workload Identity, che consente di accedere alle API di Google.
Usa un'API che accetta 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, con la richiesta API può essere fornita una chiave API anziché il token. Per determinare se un'API supporta le chiavi API, consulta la documentazione dell'API.
Usa token JWT (JSON Web Tokens) autofirmati
Alcune API di Google supportano i token JWT (JSON Web Token) 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 ADC e l'implementazione OAuth fornita dalle librerie client di Cloud o dalle librerie client delle API di Google non sono disponibili 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 l'articolo sull'utilizzo di OAuth 2.0 per applicazioni server web.
Casi d'uso specifici dei servizi Google Cloud
Alcuni servizi Google Cloud supportano i flussi di autenticazione specifici di tale servizio.
Fornisci accesso a tempo limitato a una risorsa Cloud Storage utilizzando URL firmati
Gli URL firmati forniscono accesso limitato nel tempo a una specifica risorsa di Cloud Storage.
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:
- Esegui l'autenticazione con le identità Google Cloud utilizzando il gateway di Connect.
- Esegui l'autenticazione con un provider di identità di terze parti che supporta OIDC o LDAP, utilizzando Anthos Identity Service.
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 ulteriori informazioni, consulta la documentazione del prodotto:
- Scegliere un metodo di autenticazione per API Gateway
- Scelta di un metodo di autenticazione per Cloud Endpoints
Autenticazione per 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 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, inclusa la convalida dei token ID, consulta la sezione Token ID.
Cloud Run
Esistono vari modi per configurare un servizio Cloud Run, a seconda di come viene richiamato. Potrebbe inoltre essere necessario eseguire l'autenticazione in altri servizi da un servizio Cloud Run, il che richiede un token ID OIDC.
Per autenticare gli utenti al tuo servizio da un'app web o per dispositivi mobili, puoi utilizzare 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 individuare 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é API e SDK dei Servizi di identità. 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 utilizzando gli account Gmail e Google Workspace, Accedi con Google potrebbe essere una buona opzione. Accedi con Google supporta anche l'utilizzo di Account Google con un sistema di accesso esistente. Informazioni dettagliate Accedi con Google fornisce l'accesso agli account Gmail e Google Workspace e assistenza per le password monouso (OTP). Accedi con Google ha come target gli account solo Google o gli 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 servizi e librerie di autenticazione per autenticare gli utenti nell'applicazione per un'ampia gamma di tipi di account utente. Se vuoi accettare gli accessi degli utenti da più piattaforme, Firebase Authentication potrebbe essere un'opzione valida. Informazioni dettagliate 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 è indirizzato alle applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere i propri provider di identità o che hanno bisogno delle funzionalità di livello enterprise offerte 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 di gestione di identità e accessi cliente (GIAC) che consente alle organizzazioni di aggiungere funzionalità di gestione di identità e accessi di livello aziendale alle proprie applicazioni. 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. Informazioni dettagliate 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 network, telefono e opzioni personalizzate. Identity Platform e Firebase Authentication sono entrambi basati sui servizi di identità Google. Firebase Authentication è indirizzato alle applicazioni consumer. Identity Platform è ideale per gli utenti che vogliono essere i propri provider di identità o che hanno bisogno delle funzionalità di livello enterprise offerte 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 ti consente di gestire e utilizzare i token di autenticazione con la massima personalizzazione. Prendi in considerazione questa opzione se vuoi il massimo controllo sull'implementazione OAuth 2.0 e se hai dimestichezza con l'implementazione dei flussi OAuth 2.0. Informazioni dettagliate L'implementazione OAuth 2.0 di Google è conforme alla specifica OpenID Connect ed è certificata OpenID. OpenID Connect è un livello di identità basato sul protocollo OAuth 2.0. L'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 ti 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 della tua applicazione, IAP esegue l'autenticazione prima che l'applicazione possa essere raggiunta. Informazioni dettagliate Con IAP puoi stabilire un livello di autorizzazione centrale per le applicazioni e utilizzare intestazioni firmate per proteggere la tua app. Le applicazioni protette da IAP sono accessibili solo dalle entità con il ruolo IAM corretto. Quando un utente finale tenta di accedere a una risorsa protetta da IAP, IAP esegue i controlli di autenticazione e autorizzazione per te. 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 per le lingue: |
API App Engine Users | Per le applicazioni in esecuzione nell'ambiente standard di App Engine, l'API Users è disponibile per fornire la funzionalità di autenticazione degli utenti per alcune lingue. |
Autorizzazione dell'accesso alle risorse dell'utente finale | Se l'applicazione accede a risorse di proprietà dell'utente finale, devi proteggerne l'autorizzazione. Questo caso d'uso è talvolta 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 degli account 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. Storicamente, 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 di sicurezza dovuto 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 tuoi dipendenti di utilizzare la propria identità e le proprie credenziali esistenti per accedere ai servizi Google.
Configura l'autenticazione a due fattori
La richiesta dell'autenticazione a due fattori è una best practice che contribuisce a impedire l'accesso a un account da parte di utenti malintenzionati che hanno ottenuto l'accesso alle relative credenziali. Con l'autenticazione a due fattori, è necessaria una seconda informazione o identificazione da parte dell'utente prima che l'utente venga autenticato. 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.
Servizi di identità Google supporta 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 e identifica i dispositivi tramite i certificati X.509. L'accesso basato su certificati è a volte 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 di Account Google.
Gestire le credenziali compromesse
Se ritieni che le tue credenziali siano state compromesse, tu o il tuo amministratore potete intraprendere dei passaggi per mitigare la situazione. Per ulteriori informazioni, consulta Gestire le credenziali Google Cloud compromesse.
Ricevere assistenza per i problemi relativi alle autorità di certificazione
Se vedi errori relativi a un problema con il certificato o l'autorità di certificazione (CA), inclusa la CA radice, consulta le Domande frequenti su Google Trust Services per avere ulteriori informazioni.