Google Log-in in Ihre Webanwendung einbinden

Google Log-in verwaltet den OAuth 2.0-Ablauf und den Lebenszyklus von Tokens und vereinfacht dadurch die Einbindung in Google APIs. Ein Nutzer hat jederzeit die Möglichkeit, den Zugriff auf eine Anwendung zu widerrufen.

In diesem Dokument wird beschrieben, wie du eine grundlegende Google Log-in-Integration vornimmst.

Anmeldedaten für die Autorisierung erstellen

Jede Anwendung, die für den Zugriff auf Google APIs OAuth 2.0 verwendet, muss Anmeldedaten für den Zugriff auf den OAuth 2.0-Server von Google haben. In den folgenden Schritten wird erläutert, wie Sie Anmeldedaten für Ihr Projekt erstellen. Ihre Anwendungen können dann mit den Anmeldedaten auf APIs zugreifen, die Sie für dieses Projekt aktiviert haben.

  1. Go to the Credentials page.
  2. Klicken Sie auf Anmeldedaten erstellen > OAuth-Client-ID.
  3. Wählen Sie den Anwendungstyp Webanwendung aus.
  4. Geben Sie einen Namen für Ihren OAuth 2.0-Client ein und klicken Sie auf Erstellen.

Notieren Sie sich nach Abschluss der Konfiguration die erstellte Client-ID. Sie benötigen die Client-ID, um die nächsten Schritte auszuführen. Es wird auch ein Clientschlüssel erstellt, den Sie jedoch nur für serverseitige Vorgänge benötigen.

Google Platform Library laden

Du musst die Google Platform Library auf deinen Webseiten mit Google Log-in einbinden.

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

Client-ID der App angeben

Geben Sie die Client-ID an, die Sie in der Google Developers Console für Ihre App erstellt haben, und geben Sie sie mit dem Meta-Element google-signin-client_id an.

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

Google Log-in-Schaltfläche hinzufügen

Am einfachsten kannst du deiner Website eine Google Log-in-Schaltfläche hinzufügen, indem du eine automatisch gerenderte Log-in-Schaltfläche verwendest. Mit nur wenigen Codezeilen können Sie eine Schaltfläche hinzufügen, die sich automatisch so konfiguriert, dass sie den entsprechenden Text, das Logo und die Farben für den Anmeldestatus des Nutzers und die angeforderten Bereiche enthält.

Wenn du eine Google Log-in-Schaltfläche mit den Standardeinstellungen erstellen möchtest, füge deiner Anmeldeseite ein div-Element mit der Klasse g-signin2 hinzu:

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

Profilinformationen abrufen

Nachdem Sie einen Nutzer mit den Standardbereichen bei Google angemeldet haben, können Sie auf die Google-ID, den Namen, die Profil-URL und die E-Mail-Adresse des Nutzers zugreifen.

Verwenden Sie die Methode getBasicProfile(), um Profilinformationen für einen Nutzer abzurufen.

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.
}

Nutzer abmelden

Sie können Nutzern ermöglichen, sich aus Ihrer App abzumelden, ohne sich von Google abzumelden, indem Sie eine Abmeldeschaltfläche oder einen Abmeldelink zu Ihrer Website hinzufügen. Wenn Sie einen Abmeldelink erstellen möchten, hängen Sie eine Funktion an, die die Methode GoogleAuth.signOut() aufruft, an das Ereignis onclick des Links.

<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>