`
zhb8015
  • 浏览: 390691 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
Group-logo
Spring Roo杂谈
浏览量:0
社区版块
存档分类
最新评论

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
分享到:
评论

相关推荐

    Spring Security OAuth2.0学习笔记.zip

    Spring Security OAuth2.0学习笔记 什么是认证、授权、会话。 Java Servlet为支持http会话做了哪些事儿。 基于session认证机制的运作流程。 基于token认证机制的运作流程。 理解Spring Security的工作原理,Spring ...

    视频配套笔记_Spring Security OAuth2.0认证授权_v1.1.rar

    这个压缩包文件"视频配套笔记_Spring Security OAuth2.0认证授权_v1.1.rar"包含了对这一主题的详细解释和实例代码,旨在帮助开发者深入理解和应用OAuth2.0与Spring Security的集成。 首先,Spring Security是Spring...

    新浪微博和腾讯微博OAuth2.0授权笔记+实例(Judas.n)

    这个里面包括代码,我整理的word笔记文档。 只是我觉得这远远不够,过几天我会录制一个视频,因为我本身是一个新手,这个学习的过程没必要花那么多时间,我希望我能讲清楚地告诉其他人。视频会放在我的博客。

    读书笔记:Spring Security OAuth2.0认证授权案例实战。.zip

    读书笔记:Spring Security OAuth2.0认证授权案例实战。

    Facebook Oauth2.0 API提供接口集

    ### Facebook OAuth2.0 API接口集详解 #### 一、概述 随着社交网络的日益发展,Facebook作为全球最大的社交平台之一,在数据分享方面扮演着重要角色。为了方便开发者更好地利用Facebook的功能,Facebook提供了OAuth...

    活动报名java源码-light-oauth2:基于light-4j的快速、轻量、云原生的OAuth2.0授权微服务

    OAuth 2.0 服务器,构建在 light-4j 和 light-rest-4j 框架之上。 | | | | | | | Light 平台遵循安全第一的设计,我们提供了一个 OAuth 2.0 提供者 light-oauth2,它基于 light-4j 和 light-rest-4j 框架,具有 7 个...

    Spring Security OAuth 笔记.doc

    - 这意味着开发者需要使用Spring Security的其他组件(如JWT、OAUTH2.0的Resource Server等)来实现OAuth2.0的功能。 6. **Spring Security OAuth的未来** - Spring Security OAuth项目将进入维护模式,不再更新...

    OAUTH NOTE 2015/03/02

    标题"OAUTH NOTE 2015/03/02"可能指的是在2015年3月2日记录的一份关于OAuth 2.0的笔记或文档,可能包含了当时对OAuth 2.0的理解、实现细节或者常见问题的解决方案。 描述中的“博文链接:...

    oauth2-bundle:Symfony捆绑包,提供OAuth 2.0授权资源服务器功能

    Symfony捆绑软件,提供OAuth 2.0授权/资源服务器功能。 授权和资源服务器参与者是使用库实现的。 重要笔记 该捆绑软件在库和Symfony之间提供了“胶水”。 它以其官方文档指定的方式实现库。 有关在Symfony项目中...

    openam_笔记_openDJ+openam配置

    在本篇笔记中,我们将介绍 OpenAM 与 OpenDJ 的配置,包括数据存储库、用户数据存储库、OAuth 2.0 服务配置、领域配置、验证设置等方面的配置。 1. 数据存储库与用户数据存储库 在 OpenAM 安装配置时,需要配置...

    学习笔记1

    2. **OAuth2.0授权流程** OAuth2.0是一种授权框架,用于允许第三方应用安全地访问用户的资源,而无需获取用户的用户名和密码。微博的OAuth2.0授权流程包括以下步骤: A. 用户发起授权请求,通过浏览器跳转到授权...

    新浪微博开放平台API使用笔记及演示程序

    2. **OAuth2.0授权**:使用App Key和App Secret,引导用户跳转到授权页面,用户同意后,会返回一个授权码。 3. **获取Access Token**:使用授权码,通过服务器向新浪发送请求,换取Access Token和Refresh Token,这...

    oauth-apps-for-windows:适用于应用程序的OAuth

    笔记使用Google API时, 软件包提供了与Google Cloud Platform集成的OAuth2实现。 样品 通用Windows平台(UWP)示例应用 传统桌面应用程序示例(使用WPF)。 命令行界面(CLI)控制台应用程序示例。 所有示例都...

    fitbitphp:基于 OAuth 的 Fitbit 的基本包装类 (http

    当前笔记: 订阅:库具有添加/删除订阅的基本方法,不幸的是,跟踪列表和部署服务器端点以接收来自 Fitbit 的通知以及在注册它们是您头疼的事情。 有关更多想法,请参阅 , 未经身份验证的调用:Fitbit API 的某些...

    云笔记客服端

    OAuth2.0允许第三方应用在用户授权下访问其资源,而JWT则可以用于在不查询数据库的情况下验证用户身份,减少服务器负担。 最后,为了保证软件的稳定性和可维护性,我们会遵循模块化、分层的设计原则,采用MVP...

    youdaonote-api:有道云笔记-Nodejs 版本API

    youdaonote-api有道云笔记-Nodejs 版本API概述使用oauth2.0,访问有道云笔记API,对笔记、笔记本、资源进行操作。参考安装首先在申请自己的ConsumerKey,之后才可以使用。然后安装模块npm install ydnote即可。使用...

    cloudnote(云笔记)项目

    用户认证可能通过OAuth2.0或JWT(JSON Web Tokens)实现,确保只有经过授权的用户才能访问和操作他们的笔记。对于企业级应用,可能还需要角色基础的权限控制,例如区分管理员、普通用户等不同角色的权限。 最后,...

    写笔记 小程序带后端

    - **OAuth2.0**:可能涉及微信登录集成,利用OAuth2.0协议进行第三方授权。 - **会话管理**:保持用户会话状态,如使用Cookie或Session。 5. **云存储与同步**: - **云服务**:利用云存储服务,如阿里云OSS,...

    人人API笔记(1)实例

    通过"人人API笔记(1)实例"的学习,你不仅会了解到如何实际使用人人API,还会对OAuth 2.0授权机制有深入的理解,同时也会掌握如何处理API调用中的各种情况。这将对你在社交网络应用开发方面的能力提升大有裨益。 ...

    leetcode安卓-Leetcode-Note-Editor:一款轻松上传图片到leetcodenotebook的安卓应用

    使用Oauth2.0和 Android Webkit。 开发文档: 截图 使用方法(请仔细阅读,否则可能会丢失数据!): 在您的 github 中创建一个新的公共存储库来托管照片。 确保你的 leetcode 账号通过 Oauth2.0 连接到你的 github ...

Global site tag (gtag.js) - Google Analytics