2014-11-09 73 views
0

我在我的網站中使用Google身份驗證來簡化用戶帳戶的實施。谷歌雲端硬盤SDK登錄爲Rails的另一用戶

當用戶註銷時,我清除會話變量並重置已驗證的Google API Client對象。

問題是,當我想以其他用戶身份登錄時,我立即自動登錄到我以前的Google帳戶。

我該如何處理?

謝謝!

+0

我不確定在沒有註銷您的Google帳戶的情況下是否可以控制該功能。通過您的Google帳戶登錄,我相信您隨後將登錄到您的Google帳戶,而不僅僅是您的網站。堆棧溢出本身的工作方式完全相同。 – 2014-11-09 05:03:55

+0

你有什麼建議可以幫助我解決這個問題嗎? – user3903214 2014-11-09 05:09:21

+1

我認爲它最終超出了你的控制範圍,我沒有使用Google登錄,但在以前的項目中實現了twitter OAuth登錄,並且其行爲方式相同。 Google/Twitter實質上是利用機會在爲您提供身份驗證機制的同時將該用戶簽入其服務中。 – 2014-11-09 05:14:30

回答

0

請參閱https://developers.google.com/accounts/docs/OAuth2Login,特別是'提示'參數。您可以添加prompt = select_account來強制選擇帳戶。

一般來說,您不應該在測試之外添加提示參數。對於用戶來說,切換帳戶不是一種非常常見的模式 - 登錄,註銷,登錄另一個帳戶。更有可能:

  1. 他們只有一個帳戶。
  2. 他們有多個帳戶同時登錄。
  3. 他們有多個帳戶,並使用不同的瀏覽器配置孤立他們

對於1 & 3,自動登錄的罰款。對於2,他們應該被提示選擇默認的帳戶,你不應該做任何特別的事情。

+0

感謝您的信息!你知道我可以用紅寶石谷歌驅動器sdk嗎? – user3903214 2014-11-13 02:06:34

+0

您可以通過選項將它傳遞給authorization_url()。請參閱https://github.com/google/signet/blob/master/lib/signet/oauth_2/client.rb – 2014-11-18 07:48:53

相關問題