【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
我真的想了解OpenID和OAuth之间的区别吗? 也许他们是两个完全不同的东西?
#1楼
OpenID(主要)用于标识/身份验证,因此stackoverflow.com
知道我拥有chris.boyle.name
(或任何地方),因此我可能是昨天拥有chris.boyle.name
并获得一些声望点的同一个人。
OAuth旨在授权代表您执行操作,以便stackoverflow.com
(或任何地方)可以在不知道您的Twitter密码的情况下自动代表您发送Tweet权限。
#2楼
OpenID是关于身份验证(即证明你是谁), OAuth是关于授权(即授予对功能/数据/等的访问权限而不必处理原始身份验证)。
OAuth可以在外部合作伙伴站点中使用,以允许访问受保护的数据,而无需重新验证用户。
从用户的角度来看 ,博客文章“ OpenID与OAuth”从用户的角度对两者进行了简单的比较,“ OAuth-OpenID:如果你认为他们是同一件事,你就会吵到错误的树 ”了解更多信息关于它。
#3楼
OAuth的
仅用于委派authorization
- 意味着您授权第三方服务访问以使用个人数据,而无需提供密码。 此外,OAuth“会话”通常比用户会话更长寿。 意味着OAuth旨在允许授权
即Flickr使用OAuth允许第三方服务代表他们发布和编辑人物图片,而无需提供他们的闪烁用户名和密码。
OpenID的
用于authenticate
单点登录身份。 所有OpenID应该允许OpenID提供商证明你说你是。 然而,许多站点使用身份验证来提供授权(但是两者可以分开)
即一个人在机场出示他们的护照,以验证(或证明)他们正在使用的机票名称是谁。
#4楼
OpenID和OAuth是用于身份验证和/或授权的每个基于HTTP的协议。 两者都旨在允许用户执行操作,而无需向客户端或第三方提供身份验证凭据或一揽子权限。 虽然它们相似,并且提出了将它们一起使用的标准,但它们是单独的协议。
OpenID旨在用于联合身份验证。 客户端接受来自任何提供商的身份断言(尽管客户可以自由列入白名单或黑名单)。
OAuth旨在用于委派授权。 客户向提供商注册,提供商提供授权令牌,它将接受代表用户执行操作。
OAuth目前更适合授权,因为身份验证后的进一步交互内置于协议中,但这两种协议都在不断发展。 OpenID及其扩展可用于授权,OAuth可用于身份验证,可将其视为无操作授权。
#5楼
许多人仍然访问这个,所以这里有一个非常简单的图解释它

来源:oschina
链接:https://my.oschina.net/u/3797416/blog/3143248