OpenID作为单一登录选项?

OpenID作为单一登录选项?

OpenID as a Single Sign On option?

我只是在寻找不同的意见。
您是否认为OpenID是好的"单一登录"解决方案?

对于普通用户而言,它的工作方式似乎有些混乱,并且可能存在与"将所有鸡蛋放入同一篮子"相关的问题。

无论如何,有没有人试图在具有许多不同应用程序(WordPress,Elgg,Media Wiki等)的Intranet上下文中实现自己的OpenId解决方案?

我认为这可能是解决"数字身份"问题的好方法,但是我不知道它是否可以解决"一次登录并访问Intranet"问题。

意见?


此外,SSO(如您所述)通常意味着我只需登录一次(大概是登录到我的工作站),然后从那里登录,我就不需要在任何地方登录。

OpenID当然不能解决该问题。例如,如果我使用OpenID登录到StackOverflow,这并不意味着我不需要使用相同的openID重新登录到另一个网站。


我必须说,我绝对同意有关"普通"互联网用户过于困难的说法。我认为,即使最初的提议是在2005年,OpenID仍可以被认为是"新的"。更多的高流量站点将它当作创建帐户的一种选择,而不是要求用户提供OpenID。

我认为,只要在创建OpenID的同时提供常规的用户名/密码帐户创建,一般的Internet用户自然就会开始尝试并最终坚持使用OpenID。

身份验证问题对OpenID的适用范围与在任何网站上进行注册一样。您用密码信任该网站(假设您不使用密码存储程序),因此不应将其用于OpenID。

除此之外,对于网络开发人员而言,帐户创建的标准化绝对是无价之宝。我只希望不必担心正常的创建过程,而只需放入OpenID库并将其引用到数据库即可。


有人可以简要解释单一登录的最佳答案吗?我想使用openid,因为SSO很好地解释了OpenID和SSO有何不同:

Single-sign-on is about logging on in one place and having that
authenticate you at other locations automatically. OpenID is about
delegating authentication to an OpenID provider so you can effectively
log on to multiple sites with the one set of credentials.

同一篇文章也为原始问题提供了一个很好的答案:

You could use OpenID as your authentication scheme for SSO but that's incidental.


OpenID有一个小问题。

使用OpenID无缝登录需要域之间的自动(未经验证)重定向。

这使OpenID服务器成为第三方。如果您关闭了第三方Cookie,并且浏览器严格遵循RFC2965的3.3.6中的"不可验证的交易"规则,则可能导致拒绝OpenID服务器的Cookie。

Opera就是一个例子。如果关闭第三方Cookie(通过将全局设置为"仅接受我访问的站点的Cookie"),则无法使用OpenID登录,因为您要自动提交的服务器脚本(无需进行交互即可批准)会重定向将您转到OpenID服务器,而OpenID服务器执行相同的操作以使您返回。

但是,在Firefox,IE和Safari中,由于它们在多种情况下都违反了RFC2965,它们对第三方Cookie的相应阻止使您很幸运。

在这种情况下,必须使用OpenID对更兼容的客户端不利。

解决方法是,在Opera中,除了接受所有炊具外,还可以转到工具->首选项->高级->网络,然后关闭自动重定向。然后,您将能够验证并单击您重定向到的每个链接,并且由于验证了交易,因此不会拒绝cookie。

如果您将"自动重定向"保持在打开状态,并且两台服务器都生成一个带有链接的页面供您单击,以便您可以验证事务,那么它也应该起作用。但是,任何地方都无法进行任何自动重定向。

在这种情况下,仅使用用户名和密码登录即可处理第一方Cookie,这样会更好。

OpenID仍然很酷,我想Opera仅需要一个选项来允许SO和您的OpenID服务器之间的不可验证的交易,以便您可以在此处使用"仅接受来自我访问的站点的cookie"。


我花了一些时间来了解OpenID(这么多提供商!),但我真的很喜欢这个概念。与Gravatar绑定,重写您的个人资料会轻松得多-可能需要一两个领域。

唯一的问题是您必须信任您的OpenID提供程序-但这不是我真正要解决的问题,更像是常识。

编辑:与OpenID提供程序有问题的人应该考虑设置一个新的。我的提供商是myopenid.com,我没有遇到任何问题。您可以设置多个角色(例如个人资料),所以我有一个用于博客评论,一个用于这样的技术站点。

至于拥有一个新的SO配置文件,Jeff谈到了将来可以更改您的OpenID而又不会丢失配置文件统计信息的事情。


我对OpenID非常矛盾。一方面,它解决了"身份提供者发现问题"(依赖方站点如何确定将用户发送到哪里进行身份验证)。另一方面,URL对普通用户而言非常笨拙。

我认为OpenID目前是通往Web身份解决方案之路上的一个有用的站,但肯定不是最终的目的地。

专门解决您的Intranet问题,OpenID可能不是正确的答案。如前所述,OpenID使您能够定位身份提供者,但要付出在每个依赖方键入该URL的代价。如果您要在某个内部身份提供者处对所有用户进行身份验证,并且仅接受该身份提供者的用户,则OpenID确实不会给您带来太多好处。

我看一下诸如CAS或OpenSSO之类的系统,这两种系统都可以将用户重定向到登录页面,而无需输入URL。我最近在博客中写道,一家公司在短短4个月内就将OpenSSO部署到了40个Intranet应用程序中,供3000个用户使用,其中的应用程序在IIS 6.0,Apache,JBoss和Tomcat上。


好吧..我很喜欢一个简单的login-pwd组合(我可以通过Passwordmaker.org轻轻松松)。
但是作为开发人员,我可以理解他们不想再次发明登录盘...

OpenID:

我输入我的博客网址=> Google登录=>我正在登录。

这是一个额外的水平..但是还可以。


我认为OpenID过于混乱和笨拙,无法强加给任何用户,而且我什至不认为它正在解决一个真正的问题。不必在我使用的每个站点上进行注册,从来就没有使我成为一个重大问题。特别是因为它不能特别解决该问题;当我将OpenID链接到StackOverflow时,无论如何我都必须填写其他详细信息。它可能会对所有差异进行定期注册。


OpenID的实现需要大量的努力并且被认为是成功的,即使那样,您也可能会受到不良身份提供者(例如Yahoo)的挫败。如果您已经解决了用户体验问题,那么OpenID可以很好地工作,但是对于大多数用户来说,糟糕的实现非常困难。在我看来,OpenID的最大问题是人们试图用用户意识解决问题。最好只提供一份OpenID提供程序列表,并让用户单击他们想要使用的提供程序,这样他们会更好。如果提供商不支持规范的2.0版,则有时需要了解提供商如何实现OpenID,但要为最终用户提供更好的总体体验。


因为所有用户都是程序员,所以这不是堆栈溢出的可用性问题,但是我想不出其他很多可以摆脱它的站点。

我认为openID会随着时间的推移而改善,并且一旦所有使用它的站点开始实现所有功能(例如自动填充关于我的东西),它将变得更有价值。


OpenID of course doesn't solve that problem. For example, if I use OpenID to sign in to StackOverflow, it doesn't mean I don't need to sign in to another website again using the same openID. -- tj9991

但这可能意味着。如果记住了您在OpenID网站上的登录信息(例如通过cookie),则实际上您只需为所访问的所有OpenID网站每个浏览器会话登录一次(或每周一次,每月一次...)。 。

浏览器支持和API甚至可以消除密码提示和页面重定向。好点子!


At least in the intranet scenario, I
think Active Directory (or similar) is
still one of the best options.

是的,无论如何,Active Directory在OpenId Server Provider的幕后。

为了在Intranet中开发SSO解决方案,可以使用商业选项,例如Access Manager(以前的IChain)+ Active Directory,但是我不知道是否有一个开放的解决方案,除了" Own OpenId Server" +"尚待开发的东西" + LDAP。


至少在Intranet方案中,我认为Active Directory(或类似目录)仍然是最佳选择之一。


实际上,在使用StackOverflow的情况下,单独的帐户可以为我省去很多麻烦。我决定使用我的WordPress.com OpenID,因为这是我托管博客的地方,但是事实证明WordPress.com的OpenID服务存在严重问题,并且大多数时候我无法登录到StackOverflow完全没有当然,我可以使用其他OpenID提供程序进行登录,但是随后我将在该站点上使用其他身份。

我猜你可能会说WordPress.com对此负责,但是问题仍然存在。通过使用OpenID,您将依赖于其他站点的服务来起作用。第三方网站上的任何问题实际上也会禁用您的网站。

作为一种替代解决方案,我尝试使用Yahoo OpenID登录,但是随后我得到了一些随机字符串作为用户名,并且正如DrPizza所指出的,无论如何我都必须编辑我的个人详细信息。

OpenID是个不错的主意,但在当前的情况下,它仍然不是我要依靠的东西。


推荐阅读