Предупреждение. Эти данные предоставляются в соответствии с политикой Google в отношении данных пользователей . Пожалуйста, ознакомьтесь с политикой и соблюдайте ее. Невыполнение этого требования может привести к приостановке проекта или учетной записи.

Автоматический вход и выход

На этой странице описывается, как реализовать функции, связанные с входом и выходом пользователей с помощью Google One Tap.

Автоматический вход пользователей

Google One Tap поддерживает автоматический вход, который обеспечивает беспрепятственный пользовательский интерфейс (UX) за счет исключения ручных действий, которые посетители должны выполнять при возвращении на ваш сайт. Пользователям не нужно помнить, какую учетную запись Google они выбрали во время своего последнего посещения, что снижает вероятность создания ненужных дубликатов учетных записей на вашей платформе.

Автоматический вход призван дополнить нашу кнопку «Войти с помощью Google» и диалоговые окна «Одно касание». Он предназначен для использования на всем вашем сайте, при этом ручная регистрация или переключение учетных записей происходит только после того, как пользователь впервые вышел из вашего сайта.

Для автоматического входа в систему необходимы следующие условия:

  • пользователь должен сначала войти в свою учетную запись Google и
  • ранее дали согласие на совместное использование профиля своей учетной записи с вашим приложением.

Для страниц, на которых включен автоматический вход, и если эти условия соблюдены, учетные данные токена идентификатора посетителя автоматически возвращаются без какого-либо взаимодействия с пользователем. Если эти условия не соблюдены и даже если на странице включен автоматический вход, пользователь по умолчанию будет использовать поток One Tap для входа или согласия. Если пользователь имеет несколько учетных записей Google и посещает ваш сайт, он должен сначала войти в одну учетную запись Google и предоставить согласие на использование этой учетной записи.

Вы можете измерить показатель успеха автоматического входа, используя значение auto в поле select_by возвращенного объекта учетных данных.

Чтобы включить автоматический вход, добавьте в свой код data-auto_select="true" , как показано в следующем фрагменте:

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

выход

Когда пользователь выходит из вашего веб-сайта, он может быть перенаправлен на страницу, на которой автоматически отображается приглашение Google One Tap. Для этой настройки автовыбор должен быть запрещен. В противном случае пользователь снова автоматически входит в систему, что приводит к тупиковой петле UX.

Чтобы запретить автоматический выбор после выхода пользователя из системы, добавьте имя класса g_id_signout ко всем ссылкам и кнопкам выхода. См. следующий фрагмент кода:

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

Для выхода также можно использовать следующий фрагмент кода JavaScript:

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

Следовательно, статус выхода записывается с помощью файла cookie в вашем домене, чтобы избежать тупиковой петли UX.

Статус выхода сохраняется в файле cookie g_state в вашем домене. Если у вас есть служба, которая отслеживает все файлы cookie, используемые в вашем домене, вам необходимо уведомить их об этом файле cookie.

Если вы не хотите загружать клиентскую библиотеку на своих страницах после входа в систему, вы можете использовать несколько простых решений, как показано ниже, чтобы предотвратить тупиковый UX в момент выхода из системы.

  • При выходе из системы перенаправляйте пользователей на страницу (скажем, https://example.com/logged_out ), где функция «Одно касание» не отображается или автоматический вход всегда отключен.
  • При выходе из системы добавьте параметр к URL-адресу. Например, logged_out=1 . При рендеринге One Tap с помощью JavaScript API проверьте этот параметр URL и отключите автоматический вход, если он присутствует.