专栏首页阿杜的世界OAuth认证 学习与实践

OAuth认证 学习与实践

OAuth 认证允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要分享他们的账户密码或他们的所有数据。在产品上的经典例子是,我做了A网站,但是用户可以通过微博、微信、github登录。

阅读资料

  1. 理论学习:阮一峰老师的一篇文章:理解OAuth 2.0
  2. 服务商视角:ImportSource博主的文章:创建一个Spring Security OAuth认证服务,其中的实战部分讲解了作为服务商如何构建OAuth服务;
  3. 第三方网站视角:OAuth 2.0 认证的原理与实践,这篇文章的例子是作为第三方网站如何与服务商(github)交互的流程。

概念阐述

OAuth是用户、服务提供商(用户信息的提供者)、第三方网站(用户资源的使用者)三者之间通过协作来完成信息的请求、授权、使用的协议。

  1. 用户:第三方网站的使用者
  2. 服务商:用户信息的管理者
  3. 第三方网站:用户信息的访问者

场景重现:授权码(访问令牌)模式

  1. 用户访问第三方网站,第三方网站想对用户存放在服务商的某些资源进行操作。
  2. 第三方网站向服务商请求一个临时令牌。
  3. 服务商验证第三方网站的身份后,授予一个临时令牌。
  4. 第三方网站获得临时令牌后,将用户导向至服务商的授权页面请求用户授权,然后这个过程中将临时令牌和第三方网站的返回地址发送给服务商。
  5. 用户在服务商的授权页面上输入自己的用户名和密码,授权第三方网站访问所想要和能够访问的资源。
  6. 授权成功后,服务商将用户导向第三方网站的返回地址。
  7. 第三方网站根据临时令牌从服务商那里请求访问令牌。
  8. 服务商根据令牌和用户的授权情况授予第三方网站访问令牌。
  9. 第三方网站使用获取到的访问令牌访问存放在服务商对应的用户资源

编码联系

  1. oauth-github-demo

微信开发文档阅读

  1. 网页授权获取用户基本信息

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Spring实战6-利用Spring和JDBC访问数据库主要内容

    写在前面:经过上一篇文章的学习,我们掌握了如何写web应用的控制器层,不过由于只定义了SpitterRepository和SpittleRepository接口...

    阿杜
  • Mybatis 3学习笔记(一)主要内容:

    MyBatis是一个开源持久化框架,用于简化持久层的实现。Mybatis可以减少很多JDBC相关的模板样式代码,还提供了方便使用的数据库API。

    阿杜
  • 024:用Java实现shell命令cat 1.log | grep a | sort | uniq -c | sort -rn的功能

    artificial-intelligence-codes-coding-247791.jpg

    阿杜
  • ComplexHeatmap包更新支持pheatmap转换

    pheatmap是热图中使用频率比较高一个R包,ComplexHeatmap:用于绘制、注释和排列复杂热图。现在ComplexHeatmap 迎来新版本升级,支...

    生信菜鸟团
  • thinkphp事件控制器:Event

    我们通常所了解的控制器其实是Controller控制器类,而且大多数也是继承了核心的Think\Controller类,由于该类控制器是通过URL访问请求后调用...

    公众号php_pachong
  • 一篇小黄文牵出国内最大黑产,你被“上”过吗?

    上周有热心的小伙伴向Magiccc反馈,点击“阅读原文”发现极验移动官网底部有不可描述的浮窗广告,点击后跳出一篇小黄文。

    FB客服
  • 听觉显示(Aural Relatity) - 超越互联网的连接

    https://www.ceva-dsp.com/ourblog/aural-reality-connecting-beyond-the-internet/

    用户6026865
  • malloc与calloc

    Qt君
  • 职场数据图表设计与演示(2)

    比如你看到的上面这个图,我们在做数据图表之前,我需要理解这个图里的数据的意义,我需要知道什么是离职率,离职率怎么算,和哪些数据字段有关系,这些字段的意义是什么,...

    王佩军
  • 2015 Top10 最成功的网页设计趋势

      如果你打算在2015年重新设计你的网站,那么你可能有必要了解设计优秀网页的趋势。尽可能早地考虑网页设计特点是一个好主意。

    貟王軍

扫码关注云+社区

领取腾讯云代金券