我想在客戶的應用程序中實現單點登錄。該客戶已通過Google Apps託管電子郵件。由於Google提供OpenID,這可能相對容易實施。但是,用戶可能未登錄正確的Google帳戶(甚至是多個帳戶)。如何將Google聯合登錄限制到特定的應用程序域?
因此,當使用Google OpenID端點https://www.google.com/accounts/o8/id
時,用戶將看到他/她希望登錄哪個Google帳戶的選項。由於該應用程序只允許Google Apps域中的登錄,因此可跳過此步驟,以增加用戶體驗。但是,我可以找到辦法做到這一點。 SO上有this question,但鏈接全部死亡或指過時的規格。此外,我無法在Federated Login for Google Account Users規格中找到提示。
有些地方說,應該使用https://www.google.com/a/[domain]/o8/ud?be=o8
,但似乎不工作(再):
$ wget --header='Accept: application/xrds+xml' https://www.google.com/a/[domain]/o8/ud?be=o8
2012-01-24 09:29:53 ERROR 400: Bad Request.
這對我來說不適用於GAE下使用python和users.create_login_url()與上述url作爲federated_identity參數。有其他人試過嗎? –
單獨提出這個問題[這裏](http://stackoverflow.com/questions/14637137/how-to-restrict-openid-login-to-one-google-apps-domain-on-gae-again) –