Le app web devono ottenere un token di accesso per chiamare in modo sicuro le API di Google.
La libreria JavaScript di Google Identity Services supporta sia l'autenticazione per l'accesso dell'utente sia l'autorizzazione per ottenere un token di accesso da utilizzare con le API di Google. La raccolta è destinata esclusivamente all'utilizzo nei browser.
L'autenticazione stabilisce chi è qualcuno e viene comunemente definito "registrazione" o "accesso utente". L'autorizzazione è il processo di concessione o rifiuto dell'accesso a dati o risorse. Ciò include l'ottenimento e la gestione del consenso degli utenti, la limitazione della quantità di dati o risorse condivisi con gli ambiti e il recupero di un token di accesso per l'utilizzo con le API di Google.
Queste guide trattano gli argomenti relativi all'autorizzazione e alla condivisione dei dati.
Come funziona l'autorizzazione dell'utente descrive nel dettaglio i singoli passaggi dell'autorizzazione utente e include esempi di dialoghi degli utenti.
Se hai bisogno di aiuto con l'autenticazione e come implementare la registrazione e l'accesso degli utenti, consulta Accedi con Google.
Questa libreria non è destinata a essere utilizzata con framework JavaScript lato server come Node.js, ma utilizza la libreria client Node.js di Google.
Cosa cambia
Per gli utenti, la libreria Servizi di identità Google offre numerosi miglioramenti dell'usabilità rispetto alle librerie JavaScript precedenti, tra cui:
- L'autenticazione per l'accesso dell'utente e l'autorizzazione per ottenere un token di accesso per le chiamate alle API Google ora hanno due flussi utente distinti e uno per l'accesso e l'altro per il consenso durante l'autorizzazione, con flussi utente distinti per distinguere chiaramente la tua identità e ciò che può fare un'app.
- Migliore visibilità e controllo granulare della condivisione dei dati durante il consenso degli utenti.
- Finestre di dialogo popup basate sul browser per ridurre l'attrito e che non richiedono agli utenti di uscire dal tuo sito per:
- Ottenere un token di accesso da Google.
- invia un codice di autorizzazione alla tua piattaforma di backend.
Per gli sviluppatori, l'obiettivo è stato ridurre la complessità, migliorare la sicurezza e rendere l'integrazione il più facile e veloce possibile. Alcune di queste modifiche sono:
- L'autenticazione dell'utente per l'accesso e l'autorizzazione utilizzate per ottenere un token di accesso per le chiamate alle API di Google sono due insiemi separati di oggetti JavaScript e metodi distinti. Questo riduce la complessità e la quantità di dettagli richiesti per implementare l'autenticazione o l'autorizzazione.
- Una singola libreria JavaScript ora supporta sia:
- Flusso OAuth 2.0 implicito, utilizzato per ottenere un token di accesso per l'utilizzo nel browser
- Il flusso del codice di autorizzazione OAuth 2.0, noto anche come accesso offline, avvia la distribuzione sicura di un codice di autorizzazione alla tua piattaforma di backend, in cui può essere scambiato con un token di accesso e un token di aggiornamento. In precedenza, questi flussi erano disponibili solo utilizzando più librerie e tramite chiamate dirette agli endpoint OAuth 2.0. Un'unica libreria riduce il tempo e l'impegno necessari per l'integrazione, anziché includere e apprendere più librerie e concetti OAuth 2.0 che puoi concentrarti su un'unica interfaccia unificata.
- L'indirezione tramite funzioni di stile getter è stata rimossa per semplicità e leggibilità.
- Quando gestisci le risposte delle autorizzazioni, scegli se utilizzare o meno una Promessa per soddisfare le richieste, invece di decidere per te.
- La libreria client dell'API di Google per JavaScript è stata aggiornata con queste modifiche:
- il modulo
gapi.auth2
e gli oggetti e i metodi associati non vengono più caricati automaticamente dietro le quinte e sono stati sostituiti con oggetti e metodi della libreria dei servizi Google Identity più espliciti. - L'aggiornamento automatico dei token di accesso scaduto è stato rimosso per migliorare la sicurezza e l'awareness degli utenti. Dopo la scadenza di un token di accesso, l'app deve gestire le risposte agli errori dell'API Google, richiedere e ottenere un nuovo token di accesso valido.
- Per supportare una chiara separazione dei momenti di autenticazione e autorizzazione, l'accesso simultaneo dell'utente alla tua app e al suo Account Google nonostante l'emissione di un token di accesso non è più supportato. In precedenza, la richiesta di un token di accesso consentiva anche agli utenti di accedere al proprio Account Google e di restituire una credenziale del token ID JWT per l'autenticazione degli utenti.
- il modulo
- Per aumentare la sicurezza e la privacy degli utenti, per credenziali utente concesse per l'autorizzazione, segui il principio del privilegio minimo includendo solo un token di accesso e le informazioni necessarie per gestirlo.