使用oAuth(Twitter,LinkedIn)登录Web应用程序

时间:2010-03-27 15:51:27

标签: api twitter oauth linkedin

我应该使用oAuth(例如LinkedIn或Twitter)作为我的应用程序的登录机制吗?似乎大多数应用程序只是使用oAuth将其他服务连接到它,但它们会让您在使用oAuth(包括StackOverflow)后设置自己的用户/密码,而我不确定为什么会这样。会喜欢这里的一些见解。谢谢。

5 个答案:

答案 0 :(得分:2)

为什么不使用 OpenId 来允许用户登录您的应用,而无需输入任何特定的登录名/密码?

引用相应的维基百科条目:

  

OpenID是一个开放的,分散的   用于验证用户的标准   可用于访问控制,   允许用户登录到不同的   具有相同数字的服务   这些服务信任的身份   认证机构。
的OpenID   替换常见的登录过程   使用登录名和密码,   ...


顺便说一句,这正是一个登录stackoverflow的方式; - )

答案 1 :(得分:2)

OAuth的目的不是通过您的网站验证您的用户,让您的用户允许您(oauth消费者)访问其他网站(oauth提供商)中受保护的资源,例如LinkedIn,Twitter,Google API等。

对于身份验证,您应该使用OpenId,因为others已指向

答案 2 :(得分:1)

Twitter提供登录Twitter流程即OAuth,但如果它是您服务的现有用户并且已经通过Twitter进行身份验证,则会提供更快的重定向。

http://apiwiki.twitter.com/Sign-in-with-Twitter

如果您正在构建一个以Twitter为中心的应用程序,那么从那以后就可以使用很多,并且您不必实现像OpenID这样的整个备用身份验证方法。

如果您让用户同时使用Twitter和LinkedIn进行身份验证,请务必小心,因为用户会无意中创建两个帐户并需要将其合并。

答案 3 :(得分:0)

Facebook和Twitter都有“使用Facebook / Twitter登录”API,实际上允许用户登录而无需为您的网站创建帐户。它们都会返回一个可能(或可能不会)到期的有效会话。因此,您实际上不必要求用户决定用户名/密码,因为您可以从API中获取这两者(尽管使用Twitter时无法获取用户的电子邮件地址)

为什么要将这些功能添加到您的网站?

用户通常更有可能点击“使用...登录”按钮,而不是通过整个邮件地址授权流程并输入他们的姓名等等。

答案 4 :(得分:0)

Linkedin仅对其API使用OAuth。它还取决于您编写Web应用程序的语言类型,它们应该具有您可以使用的预制包装库。