2013-09-19 6 views
1

Я внедрил логин Google OAuth 2.0 на сайте, над которым я работаю. Он отлично работает, за исключением ситуаций, когда пользователь регистрируется с двумя или более разными учетными записями в одном браузере. Он просит его выбрать, какой он хочет использовать. Но он просит пользователя каждый раз выбирать учетную запись. Есть ли способ запомнить это, поэтому пользователь может выбрать учетную запись только в первый раз, а затем автоматически зарегистрировать его с этой учетной записью?Google OAuth запомнить выбранный аккаунт

Вы можете поместить hd = domain.com в запрос в Google, но это помогает только в том случае, если две учетные записи зарегистрированы из разных доменов, и он может, кроме как войти в систему с помощью учетной записи @ domain.com.

Я где-то читал, что вы можете отправить user_id счет в качестве параметра Google (я думаю, это будет адрес электронной почты), но в данном случае я не знаю пользователей электронной почты, прежде чем он войдет в систему.

Я думаю, что это поведение одинаково, если вы используете OpenID.

Я использую библиотеку PHP OAuth от Google.

Спасибо, Андрей

ответ

1

Google должен иметь набор печенья, что позволяет OAuth приложения, чтобы сказать, что в настоящее время приходится использовать.

+0

Есть ли способ, которым следует помнить приложением Google? Поскольку файлы cookie могут быть удалены, пользователь может переключать браузеры ...? – Andrej

+1

Нет, если куки пропали – Nikos

+2

Это немного зависит от того, что вы подразумеваете под «первым временем» и «каждый раз». Например, как сказал Никос, если пользователь переключает браузеры, тогда кажется разумным, что ему нужно снова подсказать, какую учетную запись использовать, и это неизбежно. В одном браузере вам следует запрашивать только один раз за сеанс (опять же, вам нужно самому решить, что представляет собой сеанс). После того, как пользователь подключится и авторизуется для вас, вы можете сохранить его userId или электронную почту в переменной сеанса на стороне сервера, а затем разрешить любую фреймворку, которую вы используете, беспокоиться о файлах cookie. – pinoyyid

Смежные вопросы