OAuth 2.0系列教程(八) 授权码授权
授权码授权总共由2个请求和2个响应组成。一个授权请求+响应,和一个令牌请求+响应。 授权请求 授权请求被发送到授权端点以获取一个授权码。这是请求中用到的参数:
response_type | 必须。必须被设置到代码里 |
client_id | 必须。当客户端被注册时,授权服务器要标识的客户端。 |
redirect_uri | 可选。通过客户端注册的重定向URI。 |
scope | 可选。请求可能的作用域。 |
state | 可选(推荐的)。任何需要被传递到客户端请求的URI客户端的状态。 |
授权响应 授权响应包含了需要用来获取访问令牌的授权码。这是响应包括的参数:
code | 必须。授权码 |
state | 如果出现在请求中,必须包含。如果有的话,和客户端请求中发送的state参数一样。 |
授权错误 如果授权期间发生错误,两种情况会发生。 第一种情形是,客户端没有被授权或识别。比如,请求中错误的重定向URI。这种情况下,授权服务器没有必要重定向资源拥有者到重定向URI,而是通知资源拥有者发生了错误。 第二种情形是,客户端被正确地授权了,但是其他某些事情失败了。这种情况下下面地错误响应会被发送到客户端,包括在重定向URI中:
error | 必须。必须是预先定义的错误码之一。参见规范查查这些错误码及它们的含义。 |
error_description | 可选。一段UTF-8编码的描述错误的文本。适用于开发者,而不是最终用户。 |
error_uri | 可选。 一个指向包含人类可读的错误信息网页的URI。 |
state | 必须。如果出现在授权请求期间,和请求中的state参数一样。 |
令牌请求 一旦授权码被获取到了,客户端可以用它获取访问令牌。这是访问令牌请求参数:
grant_type | 必须。必须被设置到授权码中。 |
code | 必须。被授权服务器接收到的授权码。 |
redirect_uri | 必须。如果请求URI包括在授权请求中,之后必须是相同的。 |
令牌响应 访问令牌请求的响应是包含访问令牌及一些更多信息的JSON字符串:
{ "access_token" : "...","token_type" : "...","expires_in" : "...","refresh_token" : "...", }
access_type属性是授权服务器分配的访问令牌。 token_type是被授权服务器分配的令牌类型。 expires_in属性是指访问令牌过多少秒后,就不再有效。访问令牌过期值是可选的。 refresh_token属性包含令牌过期后刷新的令牌。刷新的令牌用于,一旦响应返回的不再有效时,包含一个新的访问令牌。
- 转载自 并发编程网 - ifeve.com
OAuth 2.0系列教程(八) 授权码授权相关推荐
- OAuth 2.0系列教程(十) 资源拥有者密钥证书授权请求和响应
资源拥有者者密钥证书授权包含单个的请求+响应. 资源拥有者密钥证书授权请求 请求包含下面的参数: grant_type 必须.必须设置到密码中. username 必须.UTF-8编码的资源拥有者用户 ...
- 说透OAuth 2.0 [1] - 什么是认证和授权?
说透OAuth 2.0 [1] - 什么是认证和授权? 引子 认证 认证实体变更 认证方式变更 信任系统变更 授权 总结 引子 我在面试Web相关岗位时,经常会问面试者一个问题,什么是认证,什么是授权 ...
- SpringBoot 系列教程(八十五):Spring Boot使用MD5加盐验签Api接口之前后端分离架构设计
加密算法参考: 浅谈常见的七种加密算法及实现 加密算法参考: 加密算法(DES,AES,RSA,MD5,SHA1,Base64)比较和项目应用 目的: 通过对API接口请求报文签名,后端进行验签处理, ...
- PHP下的Oauth2.0尝试 - 授权码授权(Authorization Code Grant)
OAuth 2.0 不太熟悉什么是OAuth2.0的同学可以参考阮大神的文章, 理解OAuth 2.0 - 阮一峰 授权码模式(Authorization Code) # 授权代码授予类型用于获得访问 ...
- 黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (高级)
原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(二) Cryptography Application Block (高级) 本章介绍的是企业库加密应用程序模块 ...
- 王姨劝我学HarmonyOS鸿蒙2.0系列教程之六自定义View涂鸦项目实战!
这一节写个简单的项目,涂鸦,简单来讲就是画什么,显示什么.最好的网站,就是官网,这里再发一下: https://developer.harmonyos.com/cn/docs/documentatio ...
- 王姨劝我学HarmonyOS鸿蒙2.0系列教程之五布局方法点击响应!
原创PDF |<Android 深入系统完全讲解>免费开源,可能价值百万! 王姨劝我学HarmonyOS鸿蒙2.0系列教程之三Ability概述&&调用方法! 为了更好的交 ...
- python3.6 django教程_【Python3.6+Django2.0+Xadmin2.0系列教程一】环境搭建及项目创建
由于工作需要,接触了大半年时间的Django+xadmin框架,一直没空对这块对进行相关的梳理.最近在同事的怂恿下,就在这分享下笔者的学习及工作经验吧. 好了,话不多说,下面开始进入正题: 环境需求: ...
- 王姨劝我学HarmonyOS鸿蒙2.0系列教程之二应用知识梳理逻辑!
原创PDF |<Android 深入系统完全讲解>免费开源,可能价值百万! 王姨劝我学HarmonyOS鸿蒙2.0系列教程之一环境搭建&&跑起来模拟器! 写完了第一篇,跑去 ...
最新文章
- 用了 Elasticsearch 后,查询起飞了!
- 没办法,我必须干掉他们团队的 Leader
- (转)测测你是否有搜索引擎依赖症
- 苹果手机换了屏显示无服务器,苹果将​​为存在显示问题的iPhone 11提供免费更换...
- xcode6不显示键盘------解决方案
- 编程的智慧 意外在内网找到的资源
- dataframe 删除首尾空格_你敲空格的速度很快,但女人的手不是用来敲空格的!...
- 编写一个汇编语言程序,将字符串Hello World中的全部小写字母转换为大写字母,并存放回原地址处。
- python时间复杂度和空间复杂度是指_时间复杂度和空间复杂度
- android studio table居中代码_html table表格标签内容如何居中显示?表格的align属性的用法介绍...
- P3007 [USACO11JAN]大陆议会The Continental Cowngress(2-SAT)
- python中如何去除列表中重复元素?
- 震惊!等待时间竟然用for循环!
- 锁存器芯片74HC573芯片的用法,及其在实际电路中的应用
- 提取 Wallpaper Engine 的 pkg 壁纸文件,获得静态壁纸
- 中国近代史导图(二)
- 基于单片机原理的暖风机控制系统设计-毕设课设资料
- 完美解码播放器(PotPlayer)关闭自动播放下一首的方法(找了好久)
- 常见10种安全漏洞(OWAPS TOP 10)
- 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
热门文章
- JasperReport里面的Demo
- SVN数据代码迁移Windows2012ServerR2
- popupmenu java_Java基于JPopupMenu实现系统托盘的弹出菜单,解决PopupMenu弹出菜单中文乱码...
- java的type转化class_第七章 (类型转换)Type Convertion
- warframe计算机拒绝访问,Win10运行warframe出现蓝屏DRIVER_CORRUPTED_EXPOOL怎么办
- 法流程图_世界五大学习方法之西蒙学习法
- 计算机控制常用数据通信标准,计算机控制数据通信基础要点.ppt
- oracle 性能优化 常用,Oracle數據庫常用性能優化
- Linux运维学习大纲
- 2022年中国大学生学习与发展白皮书