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 (consigliato) Autentica gli utenti utilizzando password, numeri di telefono, provider di identità federati più diffusi come Google, Facebook, Twitter e qualsiasi provider che supporti il protocollo SAML o OpenID Connect. Offre funzionalità enterprise, 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, nonché le funzionalità legacy 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à di codice più piccola.

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 di 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 dal provider di tua scelta, incluso Google.

Il metodo consigliato se vuoi creare tu stesso il protocollo di autenticazione degli utenti.
Identity-Aware Proxy (IAP) Fornisce l'autenticazione aggiungendo un livello di verifica Identity and Access Management (IAM) sopra l'app App Engine. IAP ti consente di controllare l'accesso ai tuoi servizi App Engine prima che le richieste raggiungano le risorse dell'applicazione. Ciò rende IAP inadatto alla protezione da attività all'interno dello stesso progetto Google Cloud .

Il metodo consigliato se vuoi utilizzare gli 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 integrati 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 loro applicazioni. Identity Platform supporta diversi metodi di autenticazione (SAML, OIDC, via email/password, social network, telefono e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità. Identity Platform si basa sulla scalabilità, sulle prestazioni, sulla rete e sulla sicurezza globali diGoogle Cloude viene fornita con assistenza e SLA di livello enterprise per soddisfare le esigenze di qualsiasi applicazione o servizio.

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

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

Per scoprire come integrare Identity Platform con App Engine, prova la guida pratica per l'accesso degli utenti su App Engine.

Firebase Authentication

Firebase Authentication offre un servizio di identità e autenticazione personalizzabile e integrato per l'accesso e la registrazione degli utenti. Analogamente a Identity Platform, Firebase Authentication supporta diversi metodi di autenticazione (SAML, OIDC, via email/password, social network, 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 non dispone di alcune funzionalità aziendali. Per ulteriori informazioni, consulta Differenze tra Identity Platform e Firebase Authentication.

Questa soluzione è ideale se vuoi il modo più semplice per configurare l'autenticazione utente per un'app App Engine. Per molti utenti, Firebase Authentication è il modo più rapido per implementare o testare l'autenticazione.

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

  • Il tutorial web di Firebase spiega come utilizzare Firebase su un sito web, incluso l'accesso degli utenti con Google come Identity Provider.

  • Le app di avvio rapido di Firebase mostrano come integrare Firebase su più piattaforme, utilizzando esempi di accesso federato e accesso con nome utente/password. Gli esempi mostrano Firebase Authentication utilizzando l'SDK JavaScript e su iOS e Android.

Servizi di identità Google per il web

Google Identity Services for Web è una libreria client di accesso per Google basata sui protocolli OAuth 2.0 e OpenID Connect. Consente l'accesso rapido e semplice fornendo un pulsante Accedi con Google che viene visualizzato sul tuo sito web o nella tua app.

Questa soluzione è ideale 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 certificata OpenID. Sono disponibili anche diversi altri fornitori.

Questa soluzione è ideale se vuoi una personalizzazione e un controllo totali dell'implementazione dell'autenticazione.

Per saperne di più, vedi OpenID Connect.

Identity-Aware Proxy (IAP)

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

Puoi abilitare IAP per l'intera app o per servizi o versioni specifici dell'app. I servizi o le applicazioni protetti da IAP sono accessibili solo ai principal 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 tuo conto. Scopri in che modo IAP protegge le risorse dell'applicazione 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 soluzione è ideale se vuoi utilizzare gli account utente Google e IAM per autorizzare l'accesso degli utenti.

Per scoprire come configurare IAP per le 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 eseguire l'accesso.
  • Chiedi all'utente di creare un nuovo Account Google se non ne ha già uno.

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

Questa soluzione è ideale 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 in futuro vuoi passare a Cloud Run o a un'altra Google Cloud piattaforma di hosting di app, ti consigliamo di eseguire la migrazione a una soluzione di autenticazione utente 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.