2017-02-08 144 views
1

使用Google Sign In SDK,用戶可以通過OAuth2登錄,並請求一些默認範圍。如果不預先要求應用程序可能需要的每個範圍,而是在稍後請求其他範圍以便在註冊時不壓倒用戶,這可能是有益的。OAuth2請求其他範圍

谷歌概述了這樣做的過程here

問題是,用戶使用Google登錄後,在請求其他作用域時,用戶可以在返回到我的應用程序之前切換Google帳戶並使用其他帳戶授權這些作用域。

有沒有類似於調用[GIDSignIn signIn]的方法來明確指定我要登錄哪個用戶並且不允許更改帳戶的選項?

回答

1

我對Google Sign in SDK不熟悉。我所做的大部分工作都是自己編寫的,所以我不知道SDK如何工作。然而,據說認證服務器確實支持所謂的Login_hint,它應該允許你強制他們使用特定的用戶。

login_hint電子郵件地址或子標識符當應用程序 知道它正試圖驗證該用戶,它可以提供此 參數作爲提示給認證服務器。通過此提示 可以預先填寫登錄表單上的電子郵件框或選擇正確的多登錄會話,從而簡化登錄流程。

更多信息

login_hint可以是用戶的電子郵件地址或子串, 這相當於用戶的谷歌ID。如果您未提供登錄提示 並且用戶當前已登錄,則同意屏幕 包括批准請求以將用戶的電子郵件地址發送到您的應用的 。 (更多信息請登錄login_hint。)

如果內存服務Google Sign in SDK確實可以使用openId connect,那麼應該可以。

+0

感謝您的建議。我嘗試將loginHint參數設置爲用戶的電子郵件,雖然在請求選擇帳戶時它似乎不再顯示任何其他Google帳戶,但它仍顯示「使用其他帳戶」按鈕。這當然是一種改進,但它仍然使用戶能夠登錄到另一個帳戶。 –