单一登录Web应用程序

时间:2009-04-27 11:08:12

标签: web-applications single-sign-on

我正在寻找解决方案,我们注册网站的用户可以访问我们的应用程序而无需明确登录我们的应用程序。

  1. 网站所有者将向我们注册以访问我们的应用程序
  2. 用户将登录他们的网站并查看我们网站的链接以访问它。
  3. 一旦用户点击链接,用户就可以访问它。
  4. 如果用户尝试通过浏览器访问此链接并登录其网站,则显示错误消息。
  5. 有没有办法通过cookies,webservices或HTTTP post方法等

4 个答案:

答案 0 :(得分:6)

查看OpenID - http://openid.net/

答案 1 :(得分:1)

嗯,听起来你想要像OAuth,http://oauth.net这样的授权和OpenID,http://openid.net/,支持人们轻松登录。

Google有一个混合协议,即OpenID + OAuth,它允许同时请求用户详细信息和访问令牌http://code.google.com/apis/accounts/docs/OpenID.html

答案 2 :(得分:1)

Microsoft Windows 2003 R2推出了适合您描述的名为Active Directory联合身份验证服务(ADFS)的产品。 ADFS在多个网站之间提供单点登录。这包括与您自己相关但您不一定信任打开身份验证API的网站。 ADFS与AzMan集成以进行基于角色的授权,并且可以针对Active Directory,ADLS等进行身份验证...

如果你所寻找的只是基本的单点登录,这个解决方案就有点矫枉过正了。基本上他们正在做的就是检查经过身份验证的会话,如果没有找到执行307重定向到身份验证表单所在的联合服务器(身份验证网站)。用户登录后,在联合服务器上设置cookie,并将用户重定向回原始站点,并将sessionid附加为URL变量。由该站点保留sessionid的副本作为其自己域的cookie。

我最近刚刚开始评估一些SSO工具的路线,发现如果我真正想要的只是单点登录,那么推出类似于上面的解决方案就更容易了。

答案 3 :(得分:0)

您可以调查的另一个选项是Windows Live ID。当然,主要的缺点是它要求用户拥有Windows Live帐户,但这可能是也可能不是问题