Chinaunix首页 | 论坛 | 博客
  • 博客访问: 773225
  • 博文数量: 111
  • 博客积分: 3895
  • 博客等级: 中校
  • 技术积分: 1300
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-29 21:26
文章分类

全部博文(111)

文章存档

2014年(22)

2013年(8)

2010年(14)

2009年(21)

2008年(46)

我的朋友

分类: IT业界

2014-01-15 20:36:54

Wiki百科上关于OAuth的解释:
OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。

OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源(例如仅仅是某一相册中的视频)。这样,OAuth让用户可以授权第三方网站访问他们存储在另外服务提供者的某些特定信息,而非所有内容。

OAuth是OpenID的一个补充,但是完全不同的服务。

认证和授权过程

在认证和授权的过程中涉及的三方包括:

  • 服务提供方,用户使用服务提供方来存储受保护的资源,如照片,视频,联系人列表。
  • 用户 ,存放在服务提供方的受保护的资源的拥有者。
  • 客户端 ,要访问服务提供方资源的第三方应用。在认证过程之前,客户端要向服务提供者申请客户端标识。


使用OAuth进行认证和授权的过程如下所示:

  1. 用户访问客户端的网站,想操作自己存放在服务提供方的资源。
  2. 客户端服务提供方请求一个临时令牌。
  3. 服务提供方验证客户端的身份后,授予一个临时令牌。
  4. 客户端获得临时令牌后,将用户引导至服务提供方的授权页面请求用户授权。在这个过程中将临时令牌和客户端的连接发送给服务提供方
  5. 用户服务提供方的网页上输入用户名和密码,然后授权该客户端访问所请求的资源。
  6. 授权成功后,服务提供方引导用户返回客户端的网页。
  7. 客户端根据临时令牌从服务提供方那里获取访问令牌 。
  8. 服务提供方根据临时令牌和用户的授权情况授予客户端访问令牌。
  9. 客户端使用获取的访问令牌访问存放在服务提供方上的受保护的资源。


历史

OAuth开始于2006年11月,当时()正在开发的实现。与此同时,需要一个解决方案允许使用OpenID的成员授权Dashboard访问他们的服务。这样库克、()和来自Ma.gnolia的(Larry Halff)与(David Recordon)会面讨论在Twitter和Ma.gnolia API上使用OpenID进行委托授权。 他们讨论得出没有完成API访问的委托。

2007年4月,成立了OAuth讨论组,这个由实现者组成的小组撰写了一个开放协议的提议草案。来自的(DeWitt Clinton)获悉OAuth项目后,表示他有兴趣支持这个工作。2007年7月,团队起草了最初的规范。随后,加入团队并协调了许多OAuth的稿件,创建了更为正式的规范。2007年10月, OAuth核心 1.0最后的草案发布了。

2008年11月,在举行的第73次会议上, 举行了OAuth的BoF讨论将该协议纳入IETF做进一步的规范化工作。 这个会议参加的人很多,关于正式地授权在IETF设立一个OAuth工作组这一议题得到了广泛的支持。

2010年4月,OAuth 1.0协议发表为,一个非正式。


OAuth 2.0

OAuth 2.0是OAuth协议的下一版本,但不向前兼容OAuth 1.0。 OAuth 2.0关注客户端开发者的简易性,同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程。

的新的Graph API只支持OAuth 2.0,Google在也宣布Google API对OAuth 2.0的支持,Windows Live 也支持 OAuth 2.0



阅读(503) | 评论(0) | 转发(0) |
0

上一篇:分析UCenter

下一篇:Arch Linux安装

给主人留下些什么吧!~~