2009-07-29 103 views
5
  1. 我怎样才能让我的Google Apps是OpenID提供商。是否有任何文档,教程,工作示例?谷歌Apps域作为OpenID提供商

  2. 如何使用Google Apps域身份验证(我的意思是没有OpenID)在我自己的应用程序中对用户进行身份验证。我听说过这是关于gdata API的,但我不知道从哪里开始。有没有有用教程howtos或工作例子?

我想了解免费或开源解决方案。

回答

6

你不必做任何事情让你的谷歌Apps域的OpenID提供商。但是,谷歌面向Apps for Domains的特殊OpenID服务要求OpenID依赖方实施特殊(专有)发现机制,而大多数RP尚未[尚未]。所以,如果你正在测试,它不会工作。

一种测试方法是使用RPXNow的OpenID RP。 RPX是做的接受Google的新发现机制的RP之一。例如jyte.com。尝试在那里登录。

+1

这不再是事实。免费客户不会得到openid,您需要明确启用它。来自http://code.google.com/googleapps/domain/sso/openid_reference_implementation.html:“注意:默认情况下,Google Apps专业版和教育版版本禁用了联合登录服务。域管理员可以通过控制面板启用它在http://www.google.com/a/cpanel/ /SetupIdp。“ – Leopd 2010-07-23 22:07:49

4

在问题1中,我在过去的几天里一直在研究这个问题。

看看这里:How do you delegate your OpenId to Google Apps

看来谷歌不允许委托,所以你不能只是把元信息在文档的标题。我相信你必须创建一个名为yourdomain.com/.well-known/host-meta的文件,指向Google服务器上的XRDS文件。这在the discovery API page更好解释。对不起,这是所有的行话,但我不知道如何解释它。

对于谷歌联合OpenID的测试试:http://www.puffypoodles.com/

代表团的问题是the Google group for the OpenID federated login API更好。

关于问题2,联合登录API提供了OAuth的优点,因此您可以提取用户信息并使用auth令牌等。检查联合登录API。

希望有所帮助。

0

很多人发布关于OpenID的信息,所以我会回答你的第二个问题。

ClientLogin是您所追求的API。

http://code.google.com/googleapps/domain/gdata_provisioning_api_v2.0_developers_protocol.html#client_login

注意,上面的链接是从供应API文档,但它不依赖于访问配置API,它只是在那里现在这个信息生活。

很多有不同语言的例子。

注意事项:

  • 没有单点登录此
  • 谷歌会喜欢你(他们想要杀的ClientLogin)
  • 你会得到偶尔的验证码失效,并且需要处理那些