Oauth2.0笔记

一、摘要
二、认证授权的过程
三、知名的服务提供商
四、参考资料

一、 摘要

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


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

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

二、 认证授权的过程
    (以下资料出自维基百科 http://zh.wikipedia.org/wiki/OAuth)

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

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

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

  • Facebook的新的Graph API只支持OAuth 2.0[2],
  • Google在2011年3月亦宣布Google API对OAuth 2.0的支援[3],
  • Windows Live 亦支援 OAuth 2.0[4]。
  • GOOGLE
  • FACEBOOK
  • Dropbox
  • QQ
  • 新浪微博
  • 豆瓣



四、 参考资料

Official Oauth(Include many tutorials)
http://oauth.net/2/

Quick start guide with (spring security)
http://spring-security-oauth.codehaus.org/tutorial.html

QQ授权登录
http://wiki.opensns.qq.com/wiki/%E3%80%90QQ%E7%99%BB%E5%BD%95%E3%80%91%E5%BC%80%E5%8F%91%E6%94%BB%E7%95%A5_Client-side#3._.E7.A4.BA.E4.BE.8B.E4.BB.A3.E7.A0.81

oauth2开放认证协议原理及案例分析
http://www.cnblogs.com/pengyingh/articles/2377968.html
原理及漏洞分析
http://drops.wooyun.org/papers/598

你可能感兴趣的:(SSO,jaas,OAuth)