我想在客户的应用程序中实现单点登录。该客户已通过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) –