写点什么

导火索:OAuth 2.0 四种授权登录方式必读

作者:知识浅谈
  • 2022 年 8 月 05 日
  • 本文字数:856 字

    阅读完需:约 3 分钟

导火索:OAuth 2.0四种授权登录方式必读

🍁 作者:知识浅谈,CSDN 签约讲师,华为云云享专家,阿里云社区星级博主

📌 擅长领域:全栈工程师、爬虫、ACM 算法

💒 公众号:知识浅谈

🔥 联系方式 vx:zsqtcc


⛳⛳⛳前言:


  • 关于授权登录包含三个端,资源拥有者(用户),资源服务器(存储用户资源的网站),第三方网站。

  • OAuth 就是用来分离用户和第三方网站的一个层,用户同意之后,资源服务器可以想第三方网站颁发 token,第三方网站通过这个 token 可以访问资源服务器对应这个用户的信息。

🤞OAuth2.0 授权的四种方式🤞

前提:不管哪种方式,都需要第三方网站提前到资源服务器注册身份,获取对应的appid和secret,为了防止token被乱用。

🎈授权码(authorization-code)

  1. 首先第三方网站携带 appid 和 secrect 和 redirect_url 到资源服务器取获取登陆二维码

  2. 用户扫码之后把确认通知传递给资源服务器

  3. 资源服务器按照第一步的 redirect_url 返回 authorization-code 和登陆成功状态

  4. 第三方获取 authorization-code 之后再携带自己之前注册的 appid 和 secrect 和 authorization-code 去资源服务器获取 token

  5. 然后第三方网站根据 token 去资源服务器获取到用户信息之后就可以惊醒后续操作了。

🎈隐藏式(implicit)

省去了授权码获取的步骤,直接获取的 token,适用于没有后端的网站(不安全)


  1. 第三方网站携带 appid 和 secrect 和 redirect_url 到资源服务器取获取登陆二维码

  2. 用户扫码之后把确认通知传递给资源服务器

  3. 资源服务器按照第一步的 redirect_url 返回 token 和登陆成功状态

  4. 然后第三方网站根据 token 去资源服务器获取用户信息就可以做后续的操作了

🎈密码式(password)

  1. 第三方网站携带 username 和 password 到资源服务器取获取 token

  2. 然后第三方网站根据 token 去资源服务器获取用户信息就可以做后续的操作了

🎈客户端凭证(client credentials)

适用于没有前端的命令行应用,即在命令行下请求令牌,这种 token 不是针对用户的,即有可能多个用户共享同一个令牌。


  1. 通过在命令行携带 appid 和 secrect 到资源服务器取 token

  2. 然后命令行根据 token 去资源服务器获取用户信息就可以做后续的操作了

🍚总结

掌握了这四种授权登录的思想,以后再做授权登录的时候就简单多了。

发布于: 刚刚阅读数: 3
用户头像

知识浅谈

关注

公众号:知识浅谈 2022.06.22 加入

🍁 作者:知识浅谈,CSDN签约讲师,后端领域优质创作者,阿里云社区技术博主,热爱分享创作 💒 公众号:知识浅谈 📌 擅长领域:全栈工程师、爬虫、ACM算法 🔥 联系方式vx:zsqtcc

评论

发布
暂无评论
导火索:OAuth 2.0四种授权登录方式必读_8月月更_知识浅谈_InfoQ写作社区