2010-09-08 58 views
3

如何讓用戶使用他們的Google帳戶登錄我的網絡應用並驗證他們是否從某個Google Apps域登錄?將Google帳戶登錄限制爲指定的Apps域

Google授權服務的hd parameter確保只有選定的域可以用於登錄嗎?

或者我可以獲取登錄用戶的電子郵件並確認它以「@ domain.com」結尾?這似乎不是一個好主意。

登錄後,我還需要訪問用戶的Google通訊錄,根據文檔需要AuthSub proxy authentication

回答

1

看看別人建議的OpenID文檔。簡而言之,您需要根據用戶的域名將用戶重定向到自定義登錄網址 - 例如,您需要在重定向之前找到他們的域名,即您的hd參數,這實際上會強制登錄到指定的域

還需要支持Google Apps域的SSO,其中用戶的身份驗證不是由Google處理,而是由第三方服務處理。

一旦您獲得認證信息,請確保您檢查openID提供商,而不僅僅是電子郵件地址域名。

-1

看來我可以使用OpenID + OAuth混合協議來識別用戶並獲得數據API的訪問令牌,如this blog post中所述。

編輯:已更新無效鏈接到現場博客文章。

有關如何使用OpenID獲取用戶電子郵件的信息,請參閱this question。我想我可以驗證它是否以正確的域名結尾。

+0

鏈接死了。這就是爲什麼你總是應該引用SO上的鏈接材料。 – bouke 2012-01-24 07:57:21

+0

@bouke,我更新了鏈接。在另一個域上找到相同的帖子並不難。 – 2014-05-02 06:16:52