【发布时间】:2011-03-23 12:18:47
【问题描述】:
OpenID 和 oAuth 之间的真正区别是什么?它们在我看来是一样的。
我应该澄清一下,我打算在 drupal 中使用它们,如果这有什么不同的话。所以我想我会受到 drupal 中可用的任何模块实现的约束。
【问题讨论】:
标签: authentication oauth openid
OpenID 和 oAuth 之间的真正区别是什么?它们在我看来是一样的。
我应该澄清一下,我打算在 drupal 中使用它们,如果这有什么不同的话。所以我想我会受到 drupal 中可用的任何模块实现的约束。
【问题讨论】:
标签: authentication oauth openid
OpenID 是一种为多个站点指定一个身份的方法,因此您无需一遍又一遍地注册。
OAuth 是一种允许一个应用程序访问一个帐户而不向该应用程序提供您的帐户登录信息的方法。您可以结合使用它们。
更多信息:OAuth-OpenID: You’re Barking Up the Wrong Tree if you Think They’re the Same Thing
【讨论】:
如果您在网站上有一个帐户(带有一些私人资源),您可以使用用户名/密码对登录。 如果应用程序想要获取一些私有资源,并且您不想向他们提供您的用户名/密码,请使用 OAuth。
但如果您想使用唯一帐户登录多个网站,请使用 OpenID。
(有些网站像 OpenID 一样使用 OAuth,如果您的 OpenID 帐户中有一些私人内容,则可以像 OAuth 一样使用 OpenID)
【讨论】:
OpenID 纯粹*用于使用一组凭据的多站点身份验证。
OAuth 用于让应用程序安全地相互访问:数据共享。将其视为在两件事之间建立信任纽带,例如允许您的 flickr 帐户在您的 facebook 墙上发布内容或将您的 flickr 照片挂接到第三方打印网站。
OAuth 不仅仅是站点到站点。您可以在没有真正“身份”概念的桌面应用程序中链接到像 Facebook 或 twitter 这样的身份驱动网站(例如 twitter 客户端能够发布到您的提要,而无需存储您的登录详细信息)。
有一些相似之处,但 OAuth 确实是关于服务到服务的链接。
【讨论】:
OpenID = 使用来自 OpenID 提供商 (Google) 的登录凭据登录到另一个应用程序 (Stack Overflow)
OAuth = 允许应用程序 (TwitPic) 代表您对您使用的应用程序 (Twitter) 执行操作并访问其信息。
它们可以相互结合使用。
【讨论】:
OpenID 是关于使用一个用户名对多个站点进行身份验证。
OAuth 是关于授权 - 站点 A 有权调用站点 B 的 api。
这是另一篇解释差异的好文章/类比:http://www.dotnetopenauth.net/about/about-oauth/
【讨论】:
site A has permission to call site B's api. 这为我清除了它。非常感谢。