Autenticazione degli utenti

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

Servizio di autenticazione Riepilogo
Identity Platform (opzione consigliata) Autentica gli utenti utilizzando password, numeri di telefono, provider di identità federati molto diffusi 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 SSO OIDC e SAML, multitenancy, SLA del 99, 95% e altro ancora.

Il metodo consigliato quando si avvia un nuovo progetto, in modo da poter utilizzare le funzionalità di Identity Platform e quelle legacy di Firebase Authentication.
Firebase Authentication Autentica gli utenti utilizzando diverse opzioni di autenticazione, ad esempio con Google, Facebook e Twitter. Firebase Authentication supporta un numero maggiore di utenti pur mantenendo la quantità minore 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 account utente Google da Gmail e Google Workspace.

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

Il metodo consigliato se vuoi creare personalmente il protocollo di autenticazione degli utenti.
Identity-Aware Proxy (IAP) Fornisce l'autenticazione aggiungendo un livello di verifica Identity and Access Management (IAM) al di sopra della tua app di App Engine. IAP ti consente di controllare l'accesso ai servizi App Engine prima che le richieste raggiungano le risorse dell'applicazione. Questo rende IAP inadatto per la protezione dalle 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 Autenticare gli utenti che utilizzano account Google e Google Workspace. Il servizio Utenti di App Engine è accessibile solo tramite i servizi in bundle legacy.

Identity Platform

Identity Platform è una piattaforma di gestione di identità e accessi 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, telefonica e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità. Identity Platform è basato sulla scalabilità, sulle prestazioni, sulla rete e sulla sicurezza globali di Google Cloud e viene fornito con uno SLA e un'assistenza di livello enterprise per soddisfare le esigenze di qualsiasi app o servizio.

È la soluzione migliore per la maggior parte degli utenti che desiderano opzioni di autenticazione flessibili basate su funzionalità e SLA affidabili di livello enterprise.

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

Per ulteriori informazioni sull'integrazione di Identity Platform con App Engine, consulta la guida illustrativa per l'accesso degli utenti su 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 (SAML, OIDC, email/password, social, per dispositivi mobili e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità.

Firebase Authentication si differenzia da Identity Platform per il fatto che non dispone di alcune funzionalità aziendali. Per ulteriori informazioni, consulta Differenze tra Identity Platform e Firebase Authentication.

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

Per saperne di più su Firebase Authentication, prova a seguire questi suggerimenti:

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. Consente di accedere in modo facile e veloce grazie al pulsante Accedi con Google che viene visualizzato sul tuo sito web o nella tua app.

Questa è la soluzione migliore se vuoi autenticare gli utenti in base al 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à sovrapposto al 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 soluzione è ideale per la personalizzazione e il controllo totali dell'implementazione dell'autenticazione.

Per ulteriori informazioni, vedi OpenID Connect.

Identity-Aware Proxy (IAP)

A differenza delle altre opzioni di autenticazione che implementano l'autenticazione all'interno dell'applicazione, 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 all'app di App Engine.

Puoi abilitare IAP per l'intera app o per versioni o servizi specifici dell'app. Alle applicazioni o ai servizi protetti da IAP possono accedere solo le entità che hanno il ruolo IAM corretto. Quando un utente tenta di accedere a una risorsa protetta da IAP, IAP esegue controlli di autenticazione e autorizzazione per tuo conto. Scopri come IAP protegge le risorse delle tue applicazioni nella panoramica di IAP.

IAP non protegge dalle 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 risorse di App Engine, consulta la guida rapida di IAP.

API Users

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

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

Mentre un utente esegue l'accesso all'applicazione, l'app può accedere al indirizzo email dell'utente. L'app può anche rilevare se l'utente corrente è un amministratore, semplificando l'implementazione di aree dell'app riservate agli amministratori.

Questa soluzione funziona bene se esegui 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 avere 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.