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 comuni come Google, Facebook, Twitter e qualsiasi provider che supporta il protocollo SAML o OpenID Connect. Offre funzionalità aziendali, tra cui autenticazione a più fattori, supporto di SSO OIDC e SAML, multitenancy, SLA del 99,95% e altro ancora. Il metodo consigliato per l'avvio di un nuovo progetto, in modo da poter 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à di codice più ridotta. 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 del provider che preferisci, incluso Google. Il metodo consigliato se vuoi creare autonomamente il protocollo di autenticazione utente. |
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 servizi App Engine prima che le richieste raggiungano le risorse dell'applicazione. Ciò rende IAP inadatto per la protezione dalle 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 | Autentica gli utenti che utilizzano gli 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 loro applicazioni. Identity Platform supporta diversi metodi di autenticazione (SAML, OIDC, email/password, social, telefono e autenticazione 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 e 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 vogliono opzioni di autenticazione flessibili basate su SLA e funzionalità affidabili di livello enterprise.
Identity Platform offre un proprio sistema di identità utente. Se utilizzi già Google Workspace per il tuo dominio e vuoi autenticare gli utenti in base a questo accesso, devi utilizzare Servizi di identità Google per il web.
Per scoprire come integrare Identity Platform con App Engine, consulta la guida di istruzioni per accedere 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. Come Identity Platform, Firebase Authentication supporta diversi metodi di autenticazione (SAML, OIDC, via email/password, social, mobile e personalizzata) per fornire opzioni di integrazione flessibili per qualsiasi soluzione di gestione delle identità.
Firebase Authentication è diverso da Identity Platform in quanto non dispone di determinate funzionalità aziendali. Per ulteriori informazioni, consulta Differenze tra Identity Platform e Firebase Authentication.
Questa soluzione è ideale se vuoi configurare l'autenticazione degli utenti per un'app App Engine nel modo più semplice possibile. Per molti utenti, Firebase Authentication è il modo più rapido per implementare o testare l'autenticazione.
Per scoprire di più su Firebase Authentication, prova quanto segue:
Il tutorial sul web di Firebase illustra come utilizzare Firebase su un sito web, incluso l'accesso degli utenti con Google come provider di identità.
Le app di avvio rapido di Firebase mostrano come integrare Firebase su più piattaforme, utilizzando esempi di accesso federato e di accesso con nome utente/password. I sample mostrano l'autenticazione Firebase con l'SDK JavaScript nonché 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 di accedere in modo rapido e semplice grazie a un pulsante Accedi con Google 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 con la certificazione OpenID. Sono disponibili anche diversi altri fornitori.
Questa soluzione è ideale se vuoi personalizzare e controllare completamente l'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 della tua app, IAP protegge e mette al sicuro 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 che non dispongono dell'accesso autorizzato alla tua app non possono raggiungere la tua app App Engine.
Puoi attivare l'IAP per l'intera app o per servizi o versioni specifiche dell'app. I servizi o le applicazioni protette da IAP possono essere accessibili solo da principali con il ruolo IAM corretto. Quando un utente tenta di accedere a una risorsa protetta da IAP, IAP esegue per te i controlli di autenticazione e autorizzazione. Scopri come IAP protegge le risorse delle tue applicazioni nella panoramica di IAP.
IAP non protegge dalle attività svolte 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 la gestione dell'accesso a internet (IAM) per autorizzare l'accesso utente.
Per scoprire come configurare l'IAP per le risorse App Engine, consulta la guida rapida all'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 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 in un secondo momento vuoi avere la flessibilità di passare a Cloud Run o a un'altra piattaforma di hosting di app Google Cloud, ti consigliamo di eseguire la migrazione a una soluzione di autenticazione utente più moderna.
Per informazioni 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à di Single Sign-On.