Konfiguracja

Zanim dodasz do witryny logowanie przez Google, logowanie jednokrotne lub automatyczne, skonfiguruj konfigurację OAuth i opcjonalnie skonfiguruj politykę treści witryny.

Uzyskiwanie identyfikatora klienta Google API

Aby włączyć funkcję Zaloguj się przez Google na swojej stronie, musisz najpierw skonfigurować identyfikator klienta Google API. Aby to zrobić:

  1. Otwórz stronę Dane logowania w konsoli interfejsów API Google.
  2. Utwórz lub wybierz projekt interfejsów API Google. Jeśli masz już projekt dotyczący przycisku Zaloguj się przez Google lub Google One Tap, użyj istniejącego projektu i identyfikatora klienta internetowego. Podczas tworzenia aplikacji produkcyjnych może być potrzebnych wielu projektów, a pozostałe kroki będą powtarzane dla każdego projektu, którym zarządzasz.
  3. Kliknij Utwórz dane logowania > Identyfikator klienta OAuth, a jako Typ aplikacji wybierz Aplikacja internetowa, aby utworzyć nowy identyfikator klienta. Aby użyć dotychczasowego identyfikatora klienta, wybierz jeden z typów Aplikacja internetowa.
  4. Dodaj identyfikator URI witryny do autoryzowanych źródeł JavaScript. Identyfikator URI zawiera tylko schemat i w pełni kwalifikowaną nazwę hosta. Na przykład: https://www.example.com.

  5. Opcjonalnie dane logowania można zwrócić przez przekierowanie do hostowanego punktu końcowego, a nie przez wywołanie zwrotne JavaScript. W takim przypadku dodaj identyfikatory URI przekierowań do Autoryzowanych identyfikatorów URI przekierowania. Identyfikatory URI przekierowania obejmują schemat, w pełni kwalifikowaną nazwę hosta i ścieżkę, a także muszą być zgodne z regułami weryfikacji identyfikatora URI przekierowania. Na przykład: https://www.example.com/auth-receiver.

Uwierzytelnianie w ramach funkcji Zaloguj się przez Google i One Tap obejmuje ekran zgody, który informuje użytkowników, którzy proszą o dostęp do swoich danych, oraz o jakie dane i jakie warunki mają zostać wysłane.

  1. Otwórz stronę Ekran zgody OAuth w konsoli interfejsów API Google.
  2. Jeśli pojawi się taka prośba, wybierz utworzony przed chwilą projekt.
  3. Na stronie „Ekran zgody OAuth” wypełnij formularz i kliknij przycisk „Zapisz”.

    1. Nazwa aplikacji: nazwa aplikacji, która prosi o zgodę. Nazwa powinna dokładnie odzwierciedlać charakter aplikacji i być zgodna z nazwą aplikacji widoczną dla użytkowników. Nazwa aplikacji pojawi się w oknie jednym kliknięciem.

    2. Logo aplikacji: obraz na ekranie zgody, który pomoże użytkownikom rozpoznać Twoją aplikację. Logo jest widoczne na ekranie zgody Zaloguj się przez Google i w ustawieniach konta, a nie w oknie dialogowym jednym dotknięciem.

    3. Adres e-mail zespołu pomocy: wyświetlany na ekranie zgody dla użytkowników potrzebujących pomocy i dla administratorów G Suite, którzy oceniają dostęp użytkowników do aplikacji. Ten adres e-mail będzie widoczny dla użytkowników na ekranie zgody Zaloguj się przez Google, gdy kliknie on nazwę aplikacji.

    4. Zakresy interfejsów API Google: umożliwiają aplikacjom dostęp do prywatnych danych Google. W przypadku uwierzytelniania wystarczy domyślny zakres (e-mail, profil, openid). Nie musisz dodawać żadnych poufnych zakresów. Sprawdzoną metodą jest stopniowe wysyłanie żądań zakresów w momencie, gdy jest wymagany, a nie z góry. Więcej informacji

    5. Autoryzowane domeny: aby chronić Ciebie i Twoich użytkowników, Google zezwala na używanie autoryzowanych domen tylko tym aplikacjom, które uwierzytelniają się za pomocą protokołu OAuth. Linki do Twoich aplikacji muszą być hostowane w autoryzowanych domenach. Więcej informacji

    6. Link do strony głównej aplikacji: wyświetlany na ekranie z prośbą o zgodę na wykorzystanie danych przy użyciu funkcji Zaloguj się przez Google oraz informacje o wyłączeniu odpowiedzialności zgodne z RODO i przycisku „Kontynuuj jako”. Musi być hostowana w autoryzowanej domenie.

    7. Link do Polityki prywatności aplikacji: wyświetlany na ekranie zgody Zaloguj się przez Google i przez kliknięcie przycisku „Kontynuuj jako”, aby wyświetlać informacje o wyłączeniu odpowiedzialności zgodne z RODO. Musi być hostowana w autoryzowanej domenie.

    8. Link do Warunków korzystania z aplikacji (opcjonalnie): przycisk „Kontynuuj jako” widoczny na ekranie zgody na logowanie się przez Google oraz informacje o wyłączeniu odpowiedzialności zgodne z RODO. Musi być hostowana w autoryzowanej domenie.

    Rysunek 1. Pola ekranu uwierzytelniania OAuth wyświetlane w interfejsie jednym dotknięciem

  4. Jeśli aplikacja wymaga weryfikacji, kliknij przycisk „Prześlij do weryfikacji”, aby przesłać ją do weryfikacji. Więcej informacji znajdziesz w artykule Wymagania weryfikacyjne OAuth.

(standard) Content Security Policy

Zalecamy używanie polityki bezpieczeństwa treści w celu zabezpieczenia aplikacji i zapobiegania atakom typu cross-site scripting (XSS). Więcej informacji zawierają Wprowadzenie do CSP oraz CSP i XSS.

Polityka treści może zawierać co najmniej jedną dyrektywę, np. connect-src, frame-src, script-src lub style-src.

Jeśli Twoja platforma CSP zawiera:

  • connect-src, dodaj https://accounts.google.com/gsi/, aby zezwolić na wczytywanie nadrzędnego adresu URL na potrzeby punktów końcowych usługi Google Identity Services po stronie serwera.
  • frame-src, dodaj https://accounts.google.com/gsi/, aby zezwolić na nadrzędny adres URL elementów iframe przycisku jednym kliknięciem i logowania przez Google.
  • script-src, dodaj https://accounts.google.com/gsi/client, aby umożliwić dostęp do adresu URL biblioteki JavaScript usług tożsamości Google.
  • style-src, dodaj https://accounts.google.com/gsi/style, aby zezwolić na adres URL arkuszy stylów usług tożsamości Google.

Jeśli używasz connect-src, nie podawaj adresów URL GIS. Pomaga to zminimalizować błędy przy aktualizacji GIS. Na przykład zamiast dodawać atrybut https://accounts.google.com/gsi/status, użyj nadrzędnego adresu URL GIS https://accounts.google.com/gsi/.

Ten przykładowy nagłówek odpowiedzi umożliwia usługom Google Identity Services ładowanie i wykonywanie kodu:

Content-Security-Policy-Report-Only: script-src https://accounts.google.com/gsi/client; frame-src https://accounts.google.com/gsi/; connect-src https://accounts.google.com/gsi/;

Zasada otwierania zasobów z innych domen

Aby przycisk Logowanie przez Google i Google One Tap działały prawidłowo w wyskakujących okienkach, nie możesz ustawić nagłówka HTTP Cross-Origin-Opener-Policy na same-origin, ponieważ spowoduje to przerwanie komunikacji między oknami i wyświetlenie pustego wyskakującego okienka lub podobnych błędów.

Wartość same-origin-allow-popups jest zalecana w przypadku nagłówka Cross-Origin-Opener-Policy na stronach, na których wyświetlany jest przycisk Zaloguj się przez Google lub Google One Tap.