Autenticazione degli utenti

Per autenticare gli utenti nelle applicazioni Google Cloud, Google offre i seguenti metodi di autenticazione utente:

Servizio di autenticazione Riepilogo
Identity Platform (opzione consigliata) Autentica gli utenti utilizzando password, numeri di telefono, provider di identità federati popolari come Google, Facebook, Twitter e qualsiasi provider che supporti il protocollo SAML o OpenID Connect. Offre funzionalità aziendali tra cui autenticazione a più fattori, supporto per OIDC e SSO SAML, multi-tenancy, SLA del 99, 95% e altro ancora.

Il metodo consigliato quando avvii un nuovo progetto, che ti consente di utilizzare le funzionalità di Identity Platform e quelle precedenti di Firebase Authentication.
Firebase Authentication Autentica gli utenti utilizzando diverse opzioni di autenticazione, tra cui Google, Facebook e Twitter. Firebase Authentication supporta il maggior numero di utenti mantenendo la quantità minima di codice.

Il metodo consigliato per eseguire il deployment di una soluzione nel minor numero di passaggi.
Servizi di identità Google per il web Autentica gli utenti utilizzando gli account utente Google da Gmail e Google Workspace.

Il metodo consigliato per supportare gli account solo Google o per supportare gli Account Google in un sistema di accesso esistente.
OAuth 2.0 e OpenID Connect Fornisce l'identità federata dal provider di tua scelta, incluso Google.

Il metodo consigliato se vuoi creare autonomamente il protocollo di autenticazione degli utenti.
Identity-Aware Proxy (IAP) Fornisce l'autenticazione aggiungendo un livello di verifica di Identity and Access Management (IAM) sopra l'app App Engine. IAP consente di controllare l'accesso ai servizi App Engine prima che le richieste raggiungano le risorse delle applicazioni. Di conseguenza, IAP non è idoneo per la protezione dall'attività all'interno dello stesso progetto Google Cloud.

Il metodo consigliato se vuoi utilizzare Account Google e IAM per controllare l'accesso degli utenti.
API Users Autentica gli utenti che utilizzano account Google e Google Workspace. Il servizio Utenti App Engine è accessibile solo tramite i servizi in bundle legacy.

Identity Platform

Identity Platform è una piattaforma per la gestione di identità e accessi del cliente (GIAC) che consente alle organizzazioni di personalizzare l'identità e l'autenticazione per la registrazione e l'accesso degli utenti nelle proprie applicazioni. Identity Platform supporta diversi metodi di autenticazione (SAML, OIDC, email/password, social, telefono e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità. La piattaforma Identity Platform si basa sulla scalabilità, sulle prestazioni, sulla rete e sulla sicurezza globali di Google Cloud ed è dotata di assistenza e SLA di livello enterprise per soddisfare le esigenze di praticamente qualsiasi app o servizio.

Questa soluzione è ideale per la maggior parte degli utenti che vogliono opzioni di autenticazione flessibili basate su funzionalità e SLA affidabili di livello aziendale.

Identity Platform offre il proprio sistema di identità utente. Se utilizzi già Google Workspace per il tuo dominio e vuoi autenticare gli utenti in base a questi dati di accesso, devi utilizzare Servizi di identità Google per il web.

Per ulteriori informazioni sull'integrazione di Identity Platform con App Engine, prova la guida illustrativa per l'accesso degli utenti ad App Engine.

Firebase Authentication

Firebase Authentication fornisce un servizio di identità e autenticazione personalizzabile e integrato per la registrazione e l'accesso degli utenti. Analogamente a Identity Platform, Firebase Authentication supporta più metodi di autenticazione (SFTP, OIDC, email/password, social, mobile e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità.

Firebase Authentication si differenzia da Identity Platform in quanto manca di alcune funzionalità aziendali. Per ulteriori informazioni, consulta le differenze tra Identity Platform e Firebase Authentication.

Questa è la soluzione migliore se vuoi il modo più leggero per configurare l'autenticazione utente per un'app App Engine. Per molti utenti, Firebase Authentication è il modo più veloce per implementare o verificare l'autenticazione.

Per scoprire di più su Firebase Authentication, prova quanto segue:

Servizi di identità Google per il Web

Google Identity Services per il Web è una libreria client di accesso per Google basata sui protocolli OAuth 2.0 e OpenID Connect. Ti consente di accedere in modo facile e veloce grazie al pulsante Accedi con Google visibile sul tuo sito web o nella tua app.

Questa è la soluzione migliore se vuoi autenticare gli utenti in base ai loro Account Google o se utilizzi la Console di amministrazione Google per il tuo dominio.

OAuth 2.0 e OpenID Connect

OpenID Connect è un livello di identità basato sul protocollo OAuth 2.0. Google offre un'implementazione di OAuth 2.0 conforme alla specifica OpenID Connect e certificazione OpenID. Sono disponibili anche diversi altri provider.

Questa è la soluzione migliore se vuoi una personalizzazione e il controllo totali dell'implementazione dell'autenticazione.

Per ulteriori informazioni, consulta OpenID Connect.

Identity-Aware Proxy (IAP)

A differenza delle altre opzioni di autenticazione che implementano l'autenticazione all'interno dell'app, IAP protegge e protegge l'applicazione aggiungendo un livello di autenticazione e autorizzazione IAM davanti alle risorse. Questo livello verifica le richieste esterne in entrata prima che l'app possa essere raggiunta. Gli utenti che non sono autorizzati ad accedere alla tua app non possono accedere alla tua app App Engine.

Puoi abilitare IAP per l'intera app oppure per versioni o servizi specifici dell'app. Le applicazioni o i servizi protetti da IAP sono accessibili solo dalle entità che dispongono del ruolo IAM corretto. Quando un utente tenta di accedere a una risorsa protetta da IAP, IAP esegue i controlli di autenticazione e autorizzazione per te. Scopri come IAP protegge le risorse delle tue applicazioni nella panoramica di IAP.

IAP non protegge dall'attività all'interno di un progetto, ad esempio un servizio App Engine che accede a un altro servizio nello stesso progetto.

Questa è la soluzione migliore se vuoi utilizzare account utente Google e IAM per autorizzare l'accesso degli utenti.

Per scoprire come configurare IAP per le tue risorse App Engine, consulta la guida rapida di IAP.

API Users

L'API Users consente a un'app App Engine di eseguire le seguenti attività:

  • Rileva se l'utente corrente ha eseguito l'accesso utilizzando un Account Google.
  • Reindirizza l'utente alla pagina di accesso appropriata per l'accesso.
  • Chiedi all'utente di creare un nuovo Account Google se non ne ha già uno.

Mentre un utente ha eseguito l'accesso all'applicazione, l'app può accedere all'indirizzo email dell'utente. L'app è inoltre in grado di rilevare se l'utente corrente è un amministratore, semplificando l'implementazione delle aree dell'app riservate agli amministratori.

Questa soluzione funziona bene se stai eseguendo l'upgrade di un'app esistente da un runtime di prima generazione a un runtime di seconda generazione e vuoi continuare a utilizzare l'API Users. Se vuoi la flessibilità di passare a Cloud Run o a un'altra piattaforma di hosting di app Google Cloud in un secondo momento, ti consigliamo di eseguire la migrazione a una soluzione di autenticazione degli utenti più moderna.

Per scoprire di più sull'integrazione dell'API Users, consulta la panoramica dell'API Users.

Altri servizi di autenticazione

Auth0 fornisce l'autenticazione con vari provider di identità e funzionalità Single Sign-On.