Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Na tej stronie opisaliśmy, jak wdrażać funkcje związane z logowaniem się i wylogowywanie się za pomocą Google One Tap.
Logowanie użytkowników automatycznie
Google One Tap obsługuje logowanie automatyczne, które zapewnia płynne wrażenia użytkownika, ponieważ eliminuje czynności wykonywane ręcznie przez użytkowników po powrocie do Twojej witryny. Użytkownicy nie muszą pamiętać, które konto Google zostało wybrane podczas ostatniej wizyty, dzięki czemu zmniejsza się ryzyko tworzenia na Twojej platformie niepotrzebnych duplikatów kont.
Logowanie automatyczne ma uzupełniać przycisk Zaloguj się przez Google i okno dialogowe „Jedno dotknięcie”. Jest on przeznaczony do stosowania w całej witrynie, a rejestracja ręczna lub przełączanie kont odbywają się dopiero po wylogowaniu użytkownika z witryny.
Aby automatyczne logowanie było możliwe, muszą być spełnione te warunki:
użytkownicy muszą najpierw zalogować się na swoje konto Google,
wcześniej wyraził(a) zgodę na udostępnienie profilu konta Twojej aplikacji;
gdy korzystasz z FedCM, spróbuj zalogować się tylko raz w ciągu ostatnich 10 minut.
Pojedyncze kliknięcie jest wyświetlane, gdy w tym czasie nastąpią powtarzane próby logowania.
Gdy korzystasz z FedCM, Chrome wymaga od użytkowników ponownego potwierdzenia, że chcą zalogować się w witrynie za pomocą konta Google w każdym wystąpieniu Chrome, nawet jeśli użytkownik zatwierdził witrynę przed wdrożeniem FedCM. Ta zmiana może mieć wpływ na współczynnik konwersji w Twojej dotychczasowej witrynie, która korzysta z usługi One Tap. W aktualizacji Chrome M121 ulepszono automatyczne logowanie, aby rozwiązać problem spadku współczynnika konwersji.
Na stronach, na których włączone jest logowanie automatyczne, i jeśli spełnione są te warunki, dane uwierzytelniające użytkownika w postaci tokena tożsamości są zwracane automatycznie bez interakcji z użytkownikiem. Jeśli te warunki nie są spełnione, nawet jeśli na stronie jest włączone automatyczne logowanie, użytkownik będzie logować się lub wyrażać zgodę za pomocą procesu jednokrotnego kliknięcia. Jeśli użytkownik ma kilka kont Google i odwiedzi Twoją witrynę, musi najpierw zalogować się na jedno konto Google i wyrazić zgodę na jego wykorzystanie.
Skuteczność automatycznego logowania możesz mierzyć za pomocą wartości auto w polu select_by zwracanego obiektu danych logowania.
Aby włączyć automatyczne logowanie, dodaj do kodu element data-auto_select="true", jak pokazano w tym fragmencie kodu:
Gdy użytkownik wyloguje się z Twojej witryny, może zostać przekierowany na stronę, na której automatycznie wyświetli się prośba o użycie Google One Tap. W przypadku tej konfiguracji automatyczny wybór musi być zabroniony. W przeciwnym razie użytkownik zostanie automatycznie zalogowany ponownie, co spowoduje pętlę w interfejsie użytkownika.
Korzystanie z FedCM
Ze względu na wygodę użytkowników między każdą próbą automatycznego logowania jest 10-minutowa przerwa. W tym czasie wyświetla się prompt One Tap. Aby się zalogować, użytkownicy muszą wyraźnie kliknąć opcję One Tap.
Bez FedCM
Aby zablokować automatyczny wybór po wylogowaniu 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>
Do wylogowania możesz też użyć tego fragmentu kodu JavaScript:
Aby zapobiec nieskończonemu pętli, stan zalogowania użytkownika jest przechowywany w pliku cookie o nazwie g_state, który jest ustawiany przez bibliotekę Google Identity Services. Domyślnie domena pliku cookie jest ustawiona na domenę bieżącej strony. Jeśli funkcja One Tap jest wyświetlana w domenie nadrzędnej i subdomenach, plik cookie stanu musi być widoczny we wszystkich Twoich domenach. Użyj atrybutu data-state_cookie_domain, aby ustawić domenę pliku cookie g_state na domenę nadrzędną. Na przykład dodaj element data-state_cookie_domain="example.com" do elementu g_id_onload w przypadku domeny nadrzędnej example.com i subdomeny o nazwie webapp.example.com.
Jeśli masz usługę, która monitoruje wszystkie pliki cookie używane w Twojej domenie, musisz powiadomić ją o pliku cookie g_state.
Jeśli nie chcesz wczytywać biblioteki klienta na stronach po zalogowaniu, skorzystaj z tych rozwiązań, aby zapobiec błędowi w interfejsie po wylogowaniu:
Po wylogowaniu przekierowuj użytkowników na stronę (np.
https://example.com/logged_out), na której nie wyświetla się funkcja One Tap, lub
na stronę, na której automatyczne logowanie jest zawsze wyłączone.
Podczas wylogowywania się dodaj parametr do adresu URL. Na przykład: logged_out=1.
Podczas renderowania interfejsu API JavaScript One Tap sprawdź parametr adresu URL i wyłącz automatyczne logowanie, jeśli jest obecne.
Najważniejsze ścieżki użytkownika
strona logowania automatycznego.
Korzystanie z FedCM
Użytkownicy mogą zamknąć prompt One Tap, klikając przycisk X. Ze względu na potrzeby związane z dostępnością token identyfikacyjny jest udostępniany Twojej witrynie, nawet jeśli użytkownicy klikną przycisk X.
Ze względu na wygodę użytkowników między każdą próbą automatycznego logowania jest 10-minutowa przerwa. W tym czasie wyświetla się prompt One Tap. Aby się zalogować, użytkownicy muszą wyraźnie kliknąć opcję One Tap.
Bez FedCM
Jeśli użytkownicy nie klikną przycisku Anuluj w ciągu 5 sekund, token identyfikatora zostanie udostępniony Twojej witrynie.
Gdy logowanie zostanie anulowane, na podstawie liczby aktywnych sesji Google wyświetli się strona wyboru konta lub strona powracającego użytkownika.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-05-23 UTC."],[[["\u003cp\u003eGoogle One Tap enables automatic sign-in, providing a frictionless user experience by eliminating manual login steps for returning users.\u003c/p\u003e\n"],["\u003cp\u003eAutomatic sign-in works when users are signed in to their Google Account, have previously granted consent, and (for FedCM) haven't attempted sign-in within the last 10 minutes.\u003c/p\u003e\n"],["\u003cp\u003eTo enable automatic sign-in, add \u003ccode\u003edata-auto_select="true"\u003c/code\u003e to your One Tap implementation code.\u003c/p\u003e\n"],["\u003cp\u003eWhen implementing sign-out functionality, ensure auto-selection is disabled to prevent a login loop, which can be achieved by using the \u003ccode\u003eg_id_signout\u003c/code\u003e class or \u003ccode\u003egoogle.accounts.id.disableAutoSelect()\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eOne Tap sign-out (disabling automatic sign-in) is temporary and does not sign users out of your website or Google services.\u003c/p\u003e\n"]]],[],null,["# Automatic sign-in and sign-out\n\nThis page describes how to implement features related to how users sign in or\nsign out with Google One Tap.\n\nSign in users automatically\n---------------------------\n\nGoogle One Tap supports automatic sign-in, which provides a frictionless user\nexperience (UX) by removing the manual steps users must take when returning\nto your site. Users don't need to remember which Google Account they selected\nduring their last visit, decreasing the chances of unnecessary duplicate\naccounts being created on your platform.\n\nAutomatic sign-in is intended to complement our Sign in with Google button\nand One Tap dialogs. It is designed to be used across your entire site, with\nmanual sign-up or switching accounts occurring only after the user has first\nsigned-out of your site.\n\nFor Automatic sign-in to occur the following conditions are required:\n\n- users must first be signed-in to their Google Account, and\n- previously granted consent to share their account profile with your app, and\n- when using FedCM, made only a single sign-in attempt in the last 10 minutes. One Tap is displayed when repeated sign-in attempts occur during this window.\n- when using FedCM, Chrome requires users to reconfirm that they want to sign in to the website with Google Account in each Chrome instance even if the user approved the website prior to the FedCM rollout. This change may affect conversion rate on your existing site using One Tap. In Chrome M121 update, [Auto Sign-in improvement](/identity/gsi/web/reference/release-notes#2023-12-21) mitigates conversion rate drop issue.\n\nFor pages where Automatic sign-in is enabled and if these conditions are met\nthe user's ID token credential is automatically returned without any user\ninteraction. If these conditions are not met, and even if Automatic sign-in is\nenabled on the page, the user defaults to the One Tap flow for sign-in or\nconsent. If a user has multiple Google Accounts and visits your site they are\nrequired to first sign-in to a single Google Account and to have provided\nconsent for that account.\n\nYou may measure Automatic sign-in success rate using the `auto` value in the\n[select_by](/identity/gsi/web/reference/js-reference#select_by) field of the returned credential object.\n\nTo enable automatic sign-in, add `data-auto_select=\"true\"` to your code, as\nshown in the following snippet: \n\n \u003cdiv id=\"g_id_onload\"\n data-client_id=\"\u003cvar translate=\"no\"\u003eYOUR_GOOGLE_CLIENT_ID\u003c/var\u003e\"\n data-login_uri=\"\u003cvar translate=\"no\"\u003ehttps://your.domain/your_login_endpoint\u003c/var\u003e\"\n data-auto_select=\"true\"\u003e\n \u003c/div\u003e\n\n| **Note:** The [upgraded One Tap UX for ITP browsers](/identity/gsi/web/guides/features#upgraded_ux_on_itp_browsers) doesn't support auto sign-in.\n\nSign out\n--------\n\nWhen a user signs out of your website, they can be directed to a page where a\nGoogle One Tap prompt is automatically displayed. For this setup, auto-selection\nmust be prohibited. Otherwise, the user is automatically signed in again, which\nleads to a dead-loop UX. \n\n### Using FedCM\n\nTo improve user experience, there is a 10 minute quiet period between every\nautomatic sign-in attempt. During this time period, One Tap prompt is\ndisplayed instead. Users need to explicitly click One Tap to sign in.\n\n### Without FedCM\n\nTo prohibit auto-selection after a user signs out, add the class name\n`g_id_signout` to all of your logout links and buttons. See the following code\nsnippet: \n\n \u003cdiv class=\"g_id_signout\"\u003eSign Out\u003c/div\u003e\n\nThe following JavaScript code snippet can also be used for sign out: \n\n const button = document.getElementById('signout_button');\n button.onclick = () =\u003e {\n google.accounts.id.disableAutoSelect();\n }\n\nTo prevent a dead-loop UX, user signed-out status is stored in a cookie named\n`g_state` that is set by the Google Identity Services library. By default the\ncookie domain is set to the domain of current page. If One Tap is displayed\non the parent domain and subdomains, the state cookie must be visible across\nall of your domains. Use the `data-state_cookie_domain` attribute to set the\n`g_state` cookie domain to your parent domain. For example, add\n`data-state_cookie_domain=\"example.com\"` to the `g_id_onload` element for a\nparent domain of `example.com` and a subdomain named `webapp.example.com`.\n| **Key Point:** If One Tap is displayed on multiple domains, you need to set the `g_state` cookie domain to your parent domain.\n\nIf you have a service that monitors all of the cookies used in your domain,\nyou need to notify them of the `g_state` cookie.\n| **Key Point:** Feel free to use other ways to prevent the dead-loop UX on log out moment.\n\nIf you don't want to load the client library on your post-login pages, use\nthese solutions to prevent a dead-loop UX after log out occurs:\n\n- On log out, redirect users to a page (say, `https://example.com/logged_out`) where One Tap is not displayed, or where auto sign-in is always disabled.\n- On log out, add a parameter to the URL. For example, `logged_out=1`. When rendering One Tap by JavaScript API, check that URL parameter and disable auto sign-in when present.\n\n| **Warning:** The term 'sign out' here refers to temporarily disabling One Tap Automatic sign-in for one day. This API does not sign out your users out of your website or any Google websites.\n\nKey user journeys\n-----------------\n\nThe automatic sign-in page. \n\n### Using FedCM\n\nUsers can close the One Tap prompt by clicking the **X** button. For\naccessibility consideration, an ID token is shared with your website\neven if users click the **X** button.\n\nTo improve user experience, there is a 10 minute quiet period between every\nautomatic sign-in attempt. During this time period, One Tap prompt is\ndisplayed instead. Users need to explicitly click One Tap to sign in.\n\n### Without FedCM\n\nIf users don't click the **Cancel** button within 5 seconds, an ID token\nis shared with your website.\n\nWhen Sign-In is cancelled, based on the number of active Google sessions,\neither the account chooser page or the returning user page displays.\n\n- Multiple Google sessions\n\n- Single Google Sessions\n\n| **Key Point:** Once cancelled, Automatic sign-in is disabled for one day."]]