一次性讲清OAuth2.0授权

news2025/1/16 21:56:01

文章目录

    • 什么是OAuth2.0授权
    • OAuth2.0工作原理
    • OAuth2.0应用示例
    • OAuth2.0授权模式
      • 授权码模式
      • 简化模式
      • 设备码模式
    • 如何申请应用及密钥等信息

什么是OAuth2.0授权

OAuth2.0是一种用于授权的开放标准,它允许用户授权第三方应用访问其在另一个应用中存储的信息,而无需将用户名和密码提供给第三方应用。
OAuth2.0通过令牌的方式来实现授权,令牌可以限制第三方应用的访问权限和有效期。
OAuth2.0的出现解决了用户在使用第三方应用时需要提供用户名和密码的安全隐患,同时也提供了一种标准的授权机制,使得第三方应用可以安全、高效地访问用户的资源。

OAuth2.0工作原理

在这里插入图片描述

OAuth2.0应用示例

  • 网站应用微信登录 https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html

  • 微博授权登录https://open.weibo.com/wiki/%E6%8E%88%E6%9D%83%E6%9C%BA%E5%88%B6

  • E签宝企业认证授权https://open.esign.cn/doc/opendoc/seal-open-api/mhg76c#L456v

  • 企业微信网页授权登录 https://developer.work.weixin.qq.com/document/path/91119

  • 多个服务的统一登录认证中心,支付宝账号可以授权访问阿里旗下的网站

OAuth2.0授权模式

(百度网盘为例)

授权码模式

在这里插入图片描述1.用户选择通过百度账号登录开发者应用。
2.开发者应用发起授权码 Code 请求。
3.百度 OAuth 服务器展示授权页面给用户,用户登录并同意授权。
4.用户同意授权后,百度 OAuth 服务器会将页面跳转至开发者应用配置的回调地址,返回授权码 Code。
5.开发者应用发起 Code 换取 Access Token 请求。
6.百度 OAuth 服务器返回 Access Token 凭证。

简化模式

在这里插入图片描述
相比授权码模式,简化模式不需要获取授权码 Code,直接获取 Access Token 凭证。
简化模式不支持刷新 Access Token,过期后需用户重新登录授权。
简化模式适用于无 server 端配合的应用。

1.用户选择通过百度帐号登录开发者应用。
2.开发者应用发起获取 Access Token 请求。
3.百度 OAuth 服务器展示授权页面给用户,用户登录并同意授权。
4.用户同意授权后,百度 OAuth 服务器返回 Access Token 凭证。

设备码模式

在这里插入图片描述1.开发者应用请求设备码、用户码。
2-3.百度 OAuth 服务器返回设备码、用户码、二维码url。
4.开发者应用根据二维码url呈现二维码,用户通过手机等智能终端扫描二维码。
这里开发者应用也可选择根据授权url(2-3会返回授权url),呈现用户输入用户码的页面,用户输入用户码实现对设备授权。
5.为用户返回授权页面,用户登录百度帐号并授权。当用户使用已登录百度帐号的设备扫描二维码时,无需登录直接授权。
6.用户完成授权后,开发者应用周期性用第1步返回的设备码请求 Access Token 凭证。
7.百度 OAuth 服务器在用户确认授权后,返回 Access Token。

如何申请应用及密钥等信息

  1. 去相应的开放平台申请应用
  2. 应用详情中可查看到应用的id、key、secret
  3. 安全设置中可设置授权回调地址等信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/896559.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络每日一练

吴泽彬 C Ip 网络层 Tcp udp 传输层, Http 应用层 收起 1 回复 发布于 2019-10-11 12:07 举报 fighting2016 Java A类地址中的私有地址和保留地址: ①10.0.0.0到10.255.255.255是私有地址(所谓的私有地址就是在互联网上不使用,而被…

ASEMI探索整流桥GBU814的独特优势和应用领域

编辑-Z 整流桥GBU814在众多电子元件中独树一帜,可在多种设备中发挥其重要作用。作为一款集高效性能和可靠稳定性于一身的整流桥,GBU814已在全球范围内赢得了广泛的好评。在这篇文章中,我们将详细介绍GBU814整流桥的优势和应用领域。 让我们首…

对比 VPN 与远程桌面软件,为什么远程桌面更优越

数字格局不断演变,我们的工作和连接方式也在不断变化。企业纷纷转向远程运营,有关推进向远程过渡的最佳技术的争论从未停止。争论的焦点通常是虚拟专用网络(VPN)和远程桌面软件。 长期以来,VPN 一直被用作访问公司网络…

pytorch 实现VGG

VGG全称是Visual Geometry Group,因为是由Oxford的Visual Geometry Group提出的。AlexNet问世之后,很多学者通过改进AlexNet的网络结构来提高自己的准确率,主要有两个方向:小卷积核和多尺度。而VGG的作者们则选择了另外一个方向&a…

OJ练习第150题——分割回文串

分割回文串 力扣链接&#xff1a;131. 分割回文串 题目 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 回文串 是正着读和反着读都一样的字符串。 示例 Java代码 class Solution {List<List…

锐捷无线产品运维(Web登录、 命令行登录)

目录 登录AP产品 Console登录&#xff08;只可以现场登录&#xff09; Web/Telnet/SSH登录&#xff08;可以现场、远程登录&#xff09; 配置AP的管理地址 通过Web界面远程登录 通过Telnet、SSH等命令行的方式登录 登录AC产品 Console登录&#xff08;只可以现场登录&a…

el-button实现按钮,鼠标移入显示,移出隐藏

2023.8.18今天我学习了 如何实现鼠标移入显示按钮&#xff0c;鼠标移出隐藏按钮。 效果如图&#xff1a; 鼠标移入时&#xff1a; 鼠标移出时&#xff1a; mouseover //鼠标移入事件 mouseleave //鼠标移出事件 原本我是想直接在el-button写入这两个方法&#xff0c;但是elem…

【EI会议征稿】第四届经济管理与大数据应用国际学术会议(ICEMBDA 2023)

第四届经济管理与大数据应用国际学术会议(ICEMBDA 2023&#xff09; The 4th International Conference on Economic Management and Big Data Application(ICEMBDA 2023) 第四届经济管理与大数据应用国际学术会议(ICEMBDA 2023)定于2023年10月27-29日在中国天津举行。本次会…

linux 安装pycococreator和pycocotools

目录 1.&#x1f438;安装pycococreatortools&#x1f438; &#x1f353;&#x1f353;安装方式1 &#x1f353;&#x1f353;安装方式2 2.&#x1f438;安装pycocotools&#x1f438; &#x1f353;&#x1f353;安装方式1 &#x1f353;&#x1f353;安装方式2 整理不…

大模型时代,图像描述生成(image caption)怎么走?

背景 Image caption是计算机视觉研究领域中的一个重要分支&#xff0c;其主要目标是根据输入的图像信息&#xff0c;生成相应的文字描述&#xff0c;从而完成对图像内容的准确描述。对于图像描述任务而言&#xff0c;最关键的是能够将图片中的信息以清晰准确的文字形式展现出来…

OPPO A57刷机资源(附简略教程)

https://www.123pan.com/s/hcAqVv-fpHWd.html提取码:buAp 图中画框的为必须下载的&#xff08;xiaomiflash和twrp必须解压后使用&#xff09; ​ 打开xiaomiflash点击driver点击install&#xff08;就是框住的按钮&#xff09;等待安装完成 ​用数据线将oppo a57与电脑连接&a…

VMware Workstation搭建Centos7虚拟机详细步骤

直接按照图文步骤进行操作即可。 目录 1、新建虚拟机 2、典型安装 3、稍后安装操作系统 4、版本选择CentOS 7 64位 5、设置虚拟机的名称和位置 6、设置磁盘大小 7、虚拟机向导任务完成 8、虚拟机设置 9、开启虚拟机 10、正式安装虚拟机第一步 11、选择安装时的语言 …

嵌入式视觉将成为划时代的产品

随着PC、手机和互动游戏的出现&#xff0c;电脑视觉才走进消费性电子产品而为普通大众所熟悉。最近几年AI和微处理器的发展&#xff0c;更是极大地推动了电脑视觉在各个应用领域的发展&#xff0c;尤其是嵌入式视觉(Embedded Vision)&#xff0c;引起了业界的特别关注。 HAL 90…

行业追踪,2023-08-18

自动复盘 2023-08-18 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…

期权就是股指期货吗,哪个好做一点?

近年来&#xff0c;场内ETF期权产品不断扩大&#xff0c;越来越多的投资者有投资期权的想法。当我们看到期权时&#xff0c;我们会不知不觉地想到期货&#xff0c;虽然期货与期权只有一个字的区别&#xff0c;但实际上有很大的不同&#xff0c;那么期权就是股指期货吗&#xff…

网格(mesh)点跟踪及在贴图中的应用

本文介绍网格跟踪的思路及其在贴图中的使用效果。网格跟踪即跟踪所有的网格点&#xff0c;然后根据网格点估算某一点的变形&#xff0c;相较于曲面跟踪可以在保证一定精度条件下大幅提高处理速度。这里介绍一种简单的网格跟踪思路&#xff0c;效果如下图所示&#xff1a; 创建网…

罗勇军 →《算法竞赛·快冲300题》每日一题:“质因子数量” ← 快速幂、素数筛

【题目来源】http://oj.ecustacm.cn/problem.php?id1780http://oj.ecustacm.cn/viewnews.php?id1023【题目描述】 给出n个数字&#xff0c;你可以任意选择一些数字相乘&#xff0c;相乘之后得到新数字x。 其中&#xff0c;x的分数等于x不同质因子的数量。 请你计算所有选择数…

<kernel>kernel 6.4 USB-之-hub_port_connect_change()分析

&#xff1c;kernel&#xff1e;kernel 6.4 USB-之-hub_port_connect_change()分析 kernel 6.4 USB系列文章如下&#xff1a; &#xff1c;kernel&#xff1e;kernel 6.4 USB-之-hub_event()分析 &#xff1c;kernel&#xff1e;kernel 6.4 USB-之-port_event()分析 本文是基…

kubernetes--技术文档--基本概念--《10分钟快速了解》

官网主页&#xff1a; Kubernetes 什么是k8s Kubernetes 也称为 K8s&#xff0c;是用于自动部署、扩缩和管理容器化应用程序的开源系统。 它将组成应用程序的容器组合成逻辑单元&#xff0c;以便于管理和服务发现。Kubernetes 源自Google 15 年生产环境的运维经验&#xff0c…

最长重复子数组(力扣)动态规划 JAVA

给两个整数数组 nums1 和 nums2 &#xff0c;返回 两个数组中 公共的 、长度最长的子数组的长度 。 示例 1&#xff1a; 输入&#xff1a;nums1 [1,2,3,2,1], nums2 [3,2,1,4,7] 输出&#xff1a;3 解释&#xff1a;长度最长的公共子数组是 [3,2,1] 。 示例 2&#xff1a; 输…