2011-06-06 175 views
1

好的,在这里阅读了很多关于OpenId和OAuth的QA(如this,我希望我能理解两者之间的差异,我认为人们推荐OpenID进行身份验证(证明身份)和OAuth进行授权(比如发推文或发帖给fb墙壁等)Facebook OAuth进行身份验证?

但我的问题是,如何使用Facebook/Twitter OAuth进行身份验证到网站?就像SO本身使用Facebook登录作为用户的身份一样,我想听听什么是其他人有意使用某些东西来授权使用来进行身份验证,人们可能想要做的原因与使用Open Id相同,也就是说,为了简化新用户的注册过程,

PS:如果我仍然混淆OpenID/OAuth的使用,请纠正我。

回答

3

就我所知,你不会混淆任何东西。 OpenID确实是身份验证的规范,而oAuth的确主要是为了解决授权问题。

已经说过了。您也可以使用oAuth进行身份验证。没有什么可以阻止你这样做。我一个人肯定会利用这一点。

使用oAuth进行身份验证的唯一缺点是您可能希望提供商严格限制其访问令牌允许您执行的操作。我的意思是,当你认证Twitter用户时,你也可以做任何其他的Twitter API允许你做的事情(这基本上是一切)。 Facebook可能更具限制性,认证应用程序只能被授予API功能的一个子集。

OpenID确实识别,这就是它,我很喜欢它。但是我很乐意在一周中的任何一天使用oAuth来达到同样的目的。

+0

谢谢乔恩,听起来不错。我打算同时使用OpenID和OAuth。顺便说一句,你确定Twitter API不提供像Facebook API那样的权限选择(对于开发者)!在访问某些网站时,我已经看到它要求获得许可,才能以我的名义发布推文,而在其他人则没有要求许可。 – 2011-06-08 06:30:49

+0

据我所知twitter有两个层次。阅读和更新,或只是阅读。当你注册一个twitter应用程序时,你可以指定你需要的。 – 2011-06-08 06:38:52