案例之权限相关测试|学习笔记

简介: 快速学习案例之权限相关测试

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

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


案例之权限相关测试

 

一、权限相关测试

测试了四种模式加刷新token模式,什么是进行认证,接下来进行权限相关的测试,比如在hemia_two中涉及到访问权限是product_api,那就意味着只能去访问当前OauthSourceConfig资源,因为这个资源下的 ID 是product_api,假如说把下面改了或者把表改了,在后面加一个后缀,导致访问的权限与现有的资源中访问得不一致,那么现在再用two来申请客户端是否能正常访问资源服务?

选择授权码模式,之后直接在网址后面写two,现在得到了一个新的授权码,将用户名和密码栏去掉,grand_type撤销。

image.png

直接生成一个 token,token 是可以正常生成的,接下来到访问得地方,直接请求,会发现当前的 token 不能访问,是因为权限不足。

image.png

所以说ID至关重要一定要写对,写错就会出现如上情况

image.png

如果我们需要一个访问权限应该怎样控制呢?可以去写一些类似于之前config动态控制权限数据比如可以在下面写上 @EnableGlobaMethodSecurity 如下图。使用内置的动态权限控制方式。之后可以在上面做一个控制,比如希望它的控制权限是@Secured(“ROLE_PRODUCT”)改完之后需要对资源进行一个重启,因为修改了配置类也修改了代码,就必须要重启。

image.png

再一次在网址后改成two,现在是有product_api 访问权限的,将 token的授权码做一个替换,再生成一个token,拿到token后复制,再次来访问。会发现这次是权限不足不足以访问。因为设置了访问权限必须有ROLE_PRODUCT 。没有就无法访问,可见只要按这套流程做完,就不仅仅做到了服务间的动态授权,比如B服务可以授予A服务访问它的权限,而且在访问B中的资源的时候也可以做到动态授权其实oAuth里面很多授权机制与这个是相通的只要练熟练会。那么在企业开发中使用oAuth2就没有问题了。

相关文章
|
2月前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
|
2月前
|
Java 关系型数据库 数据库连接
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
Mybatis+MySQL动态分页查询数据经典案例(含代码以及测试)
|
27天前
|
安全 测试技术
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
软件测试项目式学习二(认识软件测试及软件测试分类与案例分析)
25 1
|
23天前
|
Java
JavaSE——集合框架二(6/6)-(案例)补充知识:集合的嵌套(需求与分析、问题解决、运行测试)
JavaSE——集合框架二(6/6)-(案例)补充知识:集合的嵌套(需求与分析、问题解决、运行测试)
59 0
|
2月前
|
前端开发 测试技术 数据安全/隐私保护
软件测试 —— 案例系统缺陷报告
软件测试 —— 案例系统缺陷报告
20 1
|
2月前
|
分布式计算 Hadoop Scala
Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
【4月更文挑战第13天】Spark【环境搭建 01】spark-3.0.0-without 单机版(安装+配置+测试案例)
72 0
|
2月前
|
人工智能 安全
外汇MT5/MT4交易所平台系统开发测试版/案例设计/策略步骤/功能需求/源码程序
When developing the MT5/MT4 foreign exchange documentary trading system, the following functions and intelligence can also be considered:
|
2月前
|
Java 数据库连接 mybatis
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
mybatis简单案例源码详细【注释全面】——测试层(UserMapperTest.java)
|
2月前
|
Java 测试技术 编译器
JMM测试利器-JCStress学习笔记
JMM测试利器-JCStress学习笔记
|
2月前
|
API 开发工具
POSTMAN在测试调用钉钉待办事项接口时权限问题
POSTMAN在测试调用钉钉待办事项接口时权限问题