Automatyczne logowanie i wylogowywanie się

Na tej stronie opisujemy, jak wdrożyć funkcje związane z logowaniem się i wylogowywaniem użytkowników za pomocą Google One Tap.

Użytkownicy będą logowani automatycznie

Google One Tap obsługuje logowanie automatyczne, co usprawnia jego obsługę, ponieważ eliminuje ręczne czynności, które użytkownicy muszą wykonać po powrocie do Twojej witryny. Użytkownicy nie muszą zapamiętywać, które konto Google wybierali podczas ostatniej wizyty, co zmniejsza ryzyko utworzenia zduplikowanych kont na Twojej platformie.

Logowanie automatyczne ma stanowić uzupełnienie okien dialogowych Zaloguj się przez Google i 1 dotknięcia. Jest tak zaprojektowane, by można było z niego korzystać w całej witrynie, w przypadku gdy użytkownik rejestruje się ręcznie lub przełącza konto, dopiero gdy użytkownik się z niej wyloguje.

Aby logowanie automatyczne zostało spełnione, wymagane są te warunki:

  • użytkownicy muszą najpierw zalogować się na swoje konta Google.
  • wyrazili wcześniej zgodę na udostępnianie profilu konta Twojej aplikacji oraz
  • podczas korzystania z FedCM użytkownik podjął tylko jedną próbę logowania w ciągu ostatnich 10 minut. Jeśli w tym oknie wystąpiły kolejne próby logowania, wyświetlane jest jedno dotknięcie.
  • Jeśli użytkownik korzysta z FedCM, Chrome wymaga ponownego potwierdzenia, że w każdej instancji Chrome chce zalogować się w witrynie za pomocą konta Google, nawet jeśli użytkownik zatwierdził stronę przed wdrożeniem jej w FedCM. Ta zmiana może wpłynąć na współczynnik konwersji w Twojej obecnej witrynie za pomocą jednego dotknięcia. W aktualizacji Chrome do wersji M121 ulepszenie automatycznego logowania ogranicza problem ze spadkiem współczynnika konwersji.

W przypadku stron, na których jest włączone logowanie automatyczne, a te warunki są spełnione, dane uwierzytelniające tokena identyfikatora użytkownika są automatycznie zwracane bez udziału użytkownika. Jeśli te warunki nie zostaną spełnione, a nawet jeśli na stronie jest włączone logowanie automatyczne, użytkownik będzie domyślnie logować się lub uzyskiwać zgodę za pomocą jednego kliknięcia. Jeśli użytkownik ma kilka kont Google i odwiedza Twoją witrynę, musi najpierw zalogować się na jedno konto Google i wyrazić zgodę na to konto.

Wskaźnik sukcesu logowania automatycznego możesz mierzyć za pomocą wartości auto w polu select_by zwróconego obiektu danych logowania.

Aby włączyć logowanie automatyczne, dodaj do kodu ciąg data-auto_select="true", jak pokazano na tym fragmencie:

<div id="g_id_onload"
     data-client_id="YOUR_GOOGLE_CLIENT_ID"
     data-login_uri="https://your.domain/your_login_endpoint"
     data-auto_select="true">
</div>

Wyloguj się

Gdy użytkownik wyloguje się z Twojej witryny, może zostać przekierowany na stronę, na której automatycznie wyświetli się potwierdzenie użycia Google One Tap. W przypadku tej konfiguracji automatyczne wybieranie musi być zabronione. W przeciwnym razie użytkownik jest ponownie automatycznie logowany, co prowadzi do niepokojącej operacji.

Korzystanie z FedCM

Aby zapewnić użytkownikom lepsze wrażenia, między każdą próbą logowania automatycznego obowiązuje 10-minutowy okres bez powiadomień. W tym czasie wyświetlane jest jedno dotknięcie.

Bez FedCM

Aby zablokować automatyczne wybieranie po wylogowaniu się użytkownika, dodaj nazwę klasy g_id_signout do wszystkich linków i przycisków wylogowania. Zobacz ten fragment kodu:

<div class="g_id_signout">Sign Out</div>

Ten fragment kodu JavaScript pozwala też się wylogować:

const button = document.getElementById('signout_button');
button.onclick = () => {
  google.accounts.id.disableAutoSelect();
}

Oznacza to, że stan wylogowania jest rejestrowany za pomocą pliku cookie w Twojej domenie, co pozwala uniknąć niekorzystnego działania użytkownika.

Informacje o wylogowaniu są zapisywane w pliku cookie g_state w Twojej domenie. Jeśli masz usługę, która monitoruje wszystkie pliki cookie używane w Twojej domenie, musisz powiadomić ją o tym pliku.

Jeśli nie chcesz wczytywać biblioteki klienta na stronach wyświetlanych po zalogowaniu, możesz skorzystać z tych rozwiązań, aby zapobiec zapętleniu interfejsu po wylogowaniu:

  • Gdy się wylogujesz, przekieruj użytkowników na stronę (np. https://example.com/logged_out), na której nie wyświetla się jedno dotknięcie lub na której logowanie automatyczne jest zawsze wyłączone.
  • Przy wylogowaniu dodaj parametr do adresu URL. Na przykład: logged_out=1. Jeśli renderujesz interfejs API JavaScript jednym dotknięciem, sprawdź ten parametr adresu URL i wyłącz automatyczne logowanie, jeśli jest dostępne.

Kluczowe doświadczenia użytkowników

Strona automatycznego logowania.

Korzystanie z FedCM

Wyskakujące okienko automatycznego logowania w FedCM

Jeśli użytkownicy nie klikną X, aby anulować subskrypcję w ciągu 5 sekund, token identyfikatora zostanie udostępniony Twojej witrynie.

Bez FedCM

Wyskakujące okienko logowania automatycznego.

Jeśli użytkownicy nie klikną przycisku Anuluj w ciągu 5 sekund, token identyfikatora zostanie udostępniony Twojej witrynie.

Po anulowaniu logowania (na podstawie liczby aktywnych sesji Google) wyświetla się strona wyboru konta lub strona powracającego użytkownika.

  • Wiele sesji Google

    Korzystanie z FedCM

    Strona wyboru konta FedCM

    Bez FedCM

    Strona wyboru konta

  • Pojedyncze sesje Google

    Korzystanie z FedCM

    Strona wyboru konta FedCM

    Bez FedCM

    Strona powracającego użytkownika jednym dotknięciem