2010-01-05 42 views
2

我即将构建一个新的Web应用程序,并且遇到支持哪种认证系统的问题。我应该在新的Web项目中支持哪种认证机制?

回到过去,这只是一个简单的事情,只需创建一个注册页面并将所有内容绑定到您自己的自定义身份验证提供程序。这几天有OpenID,Facebook Connect,Twitter,现在我正在阅读关于OAuth的一个封装器OpenID Connect。我想知道哪些(即“Open-X”变体)是“必须拥有的”,哪一个只是“肉汁”。

另外,是否仍然认为拥有自己的自己的注册表单还是现在可以接受,希望用户使用Google,Facebook或其他某些变体登录?

This question提出了一个类似的问题,期望只选择一种机制。我不相信这是最具包容性的方法,但支持一切肯定是不切实际的。

+1

我是StackOverflow的超级无痛认证/注册方案的忠实粉丝。 – Seth 2010-01-05 01:08:39

+0

不够公平,但他们再次使用了“前四名”开放提供者名单和六名“较少”名单。 StackOverflow上没有注册表单,那么RYO注册表单即将消失? SO如何决定这些OpenID提供商,我应该考虑Facebook,它的覆盖面很大? – 2010-01-05 01:13:44

回答

1

我是OpenId的合格粉丝 - 对技术人员很好,但对于mroe普通用户来说并非如此。只有当我们了解你的观众时,你所要求的很多东西才能得到回答。如果你的用户也可能在Facebook上,表明技术对象较少,所以这可能是OpenId作为辅助机制的默认方式。恕我直言,如果你在Twitter上,那么OpenId不应该有任何担忧,三种机制至少有一两种。

至于你滚动自己的登录页面 - 为什么你需要它?如果你打算让其他人处理登录,为什么还要创建自己的账户,这只是另一个代码。

+0

是的,这对我来说很有意义。特别是支持Twitter和OpenID的观点。我认为Twitter适用于想要与其集成的应用程序 - 不一定用作通用的身份验证协议。好的建议,谢谢。 – 2010-01-05 01:29:33

1

我认为对于一个开发人员类型的网站SO做了挑选openid的最佳选择。技术上倾向的人们几乎可以立即接受openid。国际海事组织(IMO),如果你有一个普通的网站,那些没有技术倾向的人正在访问,他们可能不会马上得到它,并可能选择去不同的网站。我说,让用户在你自己的注册系统和openid之间进行选择 - 这样你就不会吓到非极客。我有一个通用网站,并且看到人们通常选择openid登录。希望有帮助

+0

好吧,公平点。但是怎么样,而不是创建另一个登录页面,我支持大多数人拥有帐户的Facebook连接,并且 - 显着放置“这到底是什么?”。链接,可能意味着我可以删除创建自定义身份验证所涉及的一些重复内容? – 2010-01-05 01:27:33

+0

拥有Facebook登录功能将非常有帮助。我的妻子去pogo.com很多,她使用Facebook连接功能。她真的不知道很多关于电脑的信息,所以有一个Facebook的登录选项将是“要走的路” – Luke101 2010-01-06 03:00:13

0

除非您想要与使用特定登录机制的其他网站进行集成,否则我会建议您自己写一个。它对用户和你自己来说很简单。诚然,您需要确保密码安全存储,并且您应该使用SSL发布登录信息,但这不是什么大问题。

如果互联网今天要重新发明,我确定会有一个通用的互联网登录,它是HTTP标准的一部分,并由DNS服务器处理(好吧,我不知道它是如何工作的:),但不幸的是没有,我不认为Open ID是答案(也不是其他任何登录提供者)。

1

这取决于您的要求是什么 - 您认证用户的原因以及您期望用户理解并愿意使用的内容。一般来说,随着流行的东西,因为你会受益于更强大的库,眼睛看安全影响,和可用的服务提供商。假设您希望单点登录,那么当前似乎是OpenID + OAuth或OAuth WRAP。这可能受到意见的影响;我建议寻找以身份为中心的科技博客和列表来查看正在讨论的内容。

是否支持Facebook Connect取决于您的时间表以及您的预期用户。 Facebook和FriendFeed支持OAuth WRAP,因此未来可能不需要支持Facebook Connect。

StackOverflow“精选”提供程序列表并不真正相关,除非您关心用户将使用哪些提供程序进行身份验证。否则,列出它们只是为了方便用户。 JanRain的RPX等框架可能会为您提供此UI。

相关问题