案例之刷新token测试|学习笔记

简介: 快速学习案例之刷新token测试

开发者学堂课程【Spring Security知识精讲与实战演示(四):案例之刷新token测试】学习笔记与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/733/detail/13093


案例之刷新token测试

 

一、刷新token测试

刷新token模式,如果要测试刷新token,需要在我们的服务端再添加一个东西。打开服务端配置,将连接数据库查询的Service拿到,在刷新token的时候会验证当前用户是否通过认证,所以需要加上userDetailsService(userService)加上就可以使用刷新token了。如果不加刷新token是用不了的,加上之后要对服务进行重启。

image.png

思考要验证刷新token以上四种方法哪种合适?

除了客户端模式里面没有刷新token之外,其它的三种模式授权码模式、简化模式、密码模式都包含刷新token用哪一种都可以,此次选择授权码模式,主要为了学习另外一种情况。

浏览器打开http://localhost:9001/oauth/authorize/response type=code&client id=heima one,地址后面输入two,登录写xiaoming,密码是123。

image.png

登录后得到授权码,可以拿过来直接用,如图下图上面的不需要改,下面加上code,然后把授权码复制过去,用户名和密码是选择性的不输入也可以,因为授权码的时候已经登录过了。再测试的时候,也是好使的。

image.png

另一种情况。

比如现在原封不动的再请求一次,会发现授权码已经不能用了,在oAuth2的授权码模式中生成的授权码默认只能使用一次,不能重复使用,是为了安全性的考虑,试想如果我们的授权码可以重复使用,因为这个授权码是在浏览器直接暴露的,将来就有可能被别人拿去篡改我们的请求,所以为了安全起见,希望授权码最好只能用一次,oAuth2也是如此设计的,因为它已经失效了,所以只能再来一次。

image.png

将网址后面写two,重新生成了一个授权码,将此授权码拿过去只能请求一次,,刷新token将refresh_token复制过去,其他的都不需要了,grand_type也要写成refresh_token,发送,再来请求就可以了。

image.png

刷新token的时候依然要登录客户端,哪一个客户端发的必须要说一声,否则不知道是谁发的,可见生成的token并没有泄露客户端信息,换句话说就是B系统生成的通行令牌中没有记录A的信息,所以需要再次登录否则是没有办法使用的,它生成的token依然有token也有刷新token,继续刷新都是可以的。

相关文章
|
4月前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
|
4月前
|
Java 关系型数据库 数据库连接
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
|
12天前
|
前端开发 机器人 测试技术
【RF案例】Web自动化测试弹窗处理
在进行Web自动化测试时,常会遇到不同类型的弹窗,如ajax、iframe、新窗口及alert/Confirm等。这些弹窗可通过Selenium进行定位与处理。其中,ajax弹窗直接定位处理;iframe需先选中再操作;新窗口类似iframe处理;而alert/Confirm则需特殊方法应对。在Robot Framework中,需先定义并获取窗口后使用特定关键字处理。此外,还有部分div弹窗需在消失前快速定位。希望本文能帮助大家更好地处理各类弹窗。
19 6
【RF案例】Web自动化测试弹窗处理
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
支付系统---微信支付14----创建案例项目---介绍,第二步引入Swagger,接口文档和测试页面生成工具,定义统一结果的目的是让结果变得更加规范,以上就是谷粒项目的几个过程
|
2月前
|
JSON 数据格式
postman 实用教程(含带 token 访问需登录权限的接口、测试文件上传接口、测试文件下载接口)
postman 实用教程(含带 token 访问需登录权限的接口、测试文件上传接口、测试文件下载接口)
147 0
|
3月前
|
安全 测试技术
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
65 1
|
4月前
|
前端开发 测试技术 数据安全/隐私保护
软件测试 —— 案例系统缺陷报告
软件测试 —— 案例系统缺陷报告
|
3月前
|
Java
JavaSE——集合框架二(6/6)-(案例)补充知识:集合的嵌套(需求与分析、问题解决、运行测试)
JavaSE——集合框架二(6/6)-(案例)补充知识:集合的嵌套(需求与分析、问题解决、运行测试)
72 0
|
4月前
|
分布式计算 Hadoop Scala
Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
【4月更文挑战第13天】Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
189 0
|
4月前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)