Integrazione dell'opzione Accedi con Google nell'app web

Accedi con Google gestisce il flusso e il ciclo di vita del token OAuth 2.0, semplificando l'integrazione con le API di Google. Un 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 avere credenziali di autorizzazione che identificano l'applicazione sul server OAuth 2.0 di Google. I passaggi seguenti spiegano come creare le credenziali per il progetto. Le applicazioni possono quindi utilizzare le credenziali per accedere alle API che hai abilitato per il 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. L'ID client ti servirà per completare i passaggi successivi. Viene creato anche un client secret, che però è necessario solo per le operazioni lato server.

Carica la libreria della piattaforma Google

Devi includere la libreria della piattaforma Google nelle tue pagine web che integrano 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 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 è usare un pulsante di accesso visualizzato automaticamente. Con solo poche righe di codice, puoi aggiungere un pulsante che si configura automaticamente in modo che abbia il testo, il logo e i colori appropriati per lo stato di accesso dell'utente e gli ambiti richiesti.

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

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

Recupera informazioni del profilo

Dopo aver eseguito l'accesso di 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 dall'app senza uscire da Google aggiungendo un pulsante di disconnessione 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>