Integrazione di Accedi con Google nella tua app web

Accedi con Google gestisce il flusso OAuth 2.0 e il ciclo di vita del token, semplificando l'integrazione con le API di Google. L'utente ha sempre la possibilità di revocare l'accesso a un'applicazione in qualsiasi momento.

Questo documento descrive come completare un'integrazione di base di Accedi con Google.

Crea credenziali di autorizzazione

Qualsiasi applicazione che utilizza OAuth 2.0 per accedere alle API di Google deve disporre di credenziali di autorizzazione che identificano l'applicazione nel server OAuth 2.0 di Google. I passaggi seguenti spiegano come creare le credenziali per il progetto. Le applicazioni possono quindi usare le credenziali per accedere alle API che hai abilitato per quel progetto.

  1. Go to the Credentials page.
  2. Fai clic su Crea credenziali > ID client OAuth.
  3. Seleziona il tipo di applicazione Applicazione web.
  4. Assegna un nome al client OAuth 2.0 e fai clic su Crea.

Una volta completata la configurazione, prendi nota dell'ID client creato. Avrai bisogno dell'ID client per completare i passaggi successivi. Viene creato anche un client secret, che ti serve solo per le operazioni lato server.

Carica la libreria della piattaforma Google

Devi includere la libreria della piattaforma Google nelle tue pagine web in cui è integrata la funzionalità Accedi con Google.

<script src="https://apis.google.com/js/platform.js" async defer></script>

Specifica l'ID client dell'app

Specifica l'ID client che hai creato per la tua app in Google Developers Console con l'elemento meta google-signin-client_id.

<meta name="google-signin-client_id" content="YOUR_CLIENT_ID.apps.googleusercontent.com">

Aggiungi un pulsante Accedi con Google

Il modo più semplice per aggiungere un pulsante Accedi con Google al tuo sito è utilizzare un pulsante di accesso visualizzato automaticamente. Con poche righe di codice puoi aggiungere un pulsante che si configura automaticamente in modo che utilizzi testo, logo e colori appropriati per lo stato di accesso dell'utente e gli ambiti che richiedi.

Per creare un pulsante Accedi con Google che utilizzi le impostazioni predefinite, aggiungi un elemento div con la classe g-signin2 alla tua pagina di accesso:

<div class="g-signin2" data-onsuccess="onSignIn"></div>

Recupera le informazioni del profilo

Dopo aver eseguito l'accesso a un utente con Google utilizzando gli ambiti predefiniti, puoi accedere all'ID Google, al nome, all'URL del profilo e all'indirizzo email dell'utente.

Per recuperare le informazioni del profilo di un utente, utilizza il metodo getBasicProfile().

function onSignIn(googleUser) {
  var profile = googleUser.getBasicProfile();
  console.log('ID: ' + profile.getId()); // Do not send to your backend! Use an ID token instead.
  console.log('Name: ' + profile.getName());
  console.log('Image URL: ' + profile.getImageUrl());
  console.log('Email: ' + profile.getEmail()); // This is null if the 'email' scope is not present.
}

Disconnettere un utente

Puoi consentire agli utenti di uscire dalla tua app senza uscire da Google aggiungendo un pulsante di uscita o un link al tuo sito. Per creare un link di uscita, collega una funzione che chiami il metodo GoogleAuth.signOut() all'evento onclick del link.

<a href="#" onclick="signOut();">Sign out</a>
<script>
  function signOut() {
    var auth2 = gapi.auth2.getAuthInstance();
    auth2.signOut().then(function () {
      console.log('User signed out.');
    });
  }
</script>