2.OAuth2.0实战案例

本文涉及的产品
RDS DuckDB + QuickBI 企业套餐,8核32GB + QuickBI 专业版
简介: 本教程介绍OAuth2四大授权模式实现:创建父工程及资源、授权模块,配置启动类与处理器;通过授权码、简化、密码及客户端模式测试,完成登录认证、权限授予、令牌申请与资源访问全流程。

1.创建父工程
2.创建资源模块
2.1 创建工程并导入依赖
2.2 创建配置文件
2.3 创建启动类
2.4 创建处理器
3.创建授权模块
3.1 创建工程并导入依赖
3.2 创建配置文件
3.3 创建启动类
3.4 创建配置类
3.5 创建OAuth2授权配置类
4.测试
4.1 授权码模式测试
在地址栏访问地址
http://localhost:9001/oauth/authorize?response_type=code&client_id=heima_one
跳转到SpringSecurity默认认证页面,提示用户登录个人账户【这里是sys_user表中的数据】
登录成功后询问用户是否给予操作资源的权限,具体给什么权限。Approve是授权,Deny是拒绝。
这里我们选择read和write都给予Approve。
点击Authorize后跳转到回调地址并获取授权码
使用授权码到服务器申请通行令牌token
重启资源服务器,然后携带通行令牌再次去访问资源服务器,大功告成!
4.2 简化模式测试
在地址栏访问地址
http://localhost:9001/oauth/authorize?response_type=token&client_id=heima_one
由于上面用户已经登录过了,所以无需再次登录,其实和上面是有登录步骤的,这时,浏览器直接返回了token
直接访问资源服务器
4.3 密码模式测试
申请token
访问资源服务器
4.4 客户端模式测试
申请token
访问资源服务

相关文章
|
5月前
|
SQL 容灾 Nacos
Seata的部署和集成
本文介绍Seata分布式事务框架的部署与微服务集成。首先下载并解压Seata Server,修改配置文件application.yml,并在Nacos中配置seataServer.properties及数据库信息。创建seata数据库并运行SQL脚本初始化事务表。启动TC服务后,注册至Nacos。各微服务引入Seata依赖,配置application.yml连接TC。为实现高可用,搭建多节点TC集群,通过Nacos统一管理事务组映射,实现异地容灾与动态切换。微服务从Nacos读取client.properties,灵活绑定TC集群,提升系统稳定性与可维护性。(238字)
|
5月前
|
关系型数据库 应用服务中间件 Nacos
Nacos配置中心
本章详解Nacos配置中心实战:实现微服务配置统一管理,支持热更新、配置共享与优先级控制,并搭建高可用集群,提升系统稳定性。
|
5月前
|
SQL Java 数据库连接
持久层框架MyBatisPlus
MyBatisPlus是MyBatis的增强框架,简化单表CRUD操作,内置分页、条件构造器、代码生成等功能,支持逻辑删除、枚举处理与JSON字段映射,提升开发效率。
|
5月前
|
负载均衡 Java Nacos
Gateway服务网关
网关是微服务的统一入口,实现请求路由、权限控制与限流。基于Spring Cloud Gateway可快速搭建高性能网关,支持断言与过滤器灵活配置,并解决跨域问题,提升系统安全性和可维护性。
|
5月前
|
运维 安全 Shell
【运维救火】服务器磁盘满了?教你3招快速定位“空间杀手”并清理
当磁盘写满时,别慌!本文提供一套标准化排查流程:先用 `df -h` 定位问题磁盘,再用 `du` 命令层层深入找出大文件;清理时推荐清空而非删除日志,避免句柄泄露。若空间未释放,可用 `lsof | grep deleted` 查找被占用的文件并重启对应服务。四步冷静救火,快速恢复系统稳定。
|
11月前
|
存储 JavaScript 前端开发
Set中的add()方法和数组的push()方法有什么区别?
Set中的add()方法和数组的push()方法有什么区别?
569 122
|
7月前
|
存储 数据采集 人工智能
拔俗AI家庭医生助手服务系统:24小时守护全家健康的智能管家
在“互联网+医疗健康”背景下,针对基层医疗供需矛盾,本文基于阿里云AI与大数据技术,构建AI家庭医生助手系统,涵盖“云-边-端”协同架构、多模态数据采集、医疗大模型推理、实时预警与数据互通方案,并落地社区医疗实践,提升服务效率与健康管理水平,助力数字化转型。(238字)
669 0
|
编解码 人工智能 缓存
自学记录鸿蒙API 13:实现多目标识别Object Detection
多目标识别技术广泛应用于动物识别、智能相册分类和工业检测等领域。本文通过学习HarmonyOS的Object Detection API(API 13),详细介绍了如何实现一个多目标识别应用,涵盖从项目初始化、核心功能实现到用户界面设计的全过程。重点探讨了目标类别识别、边界框生成、高精度置信度等关键功能,并分享了性能优化与功能扩展的经验。最后,作者总结了学习心得,并展望了未来结合语音助手等创新应用的可能性。如果你对多目标识别感兴趣,不妨从基础功能开始,逐步实现自己的创意。
464 60
|
存储 关系型数据库 MySQL
基于SpringBoot+Vue古典舞在线交流平台的设计与实现(源码+部署说明+演示视频+源码介绍+lw)(2)
基于SpringBoot+Vue古典舞在线交流平台的设计与实现(源码+部署说明+演示视频+源码介绍+lw)
345 1
用通义万象做一个动态海报庆祝4月24日中国航天日
这段文案描述了一幅动画海报的设计理念,融合传统与现代、科技与梦想。画面以上海黄浦江为背景,明月升起象征传统,火箭升空代表科技探索。穿着旗袍的女孩和多元人群展现文化传承,火箭化为飞船遨游宇宙寓意人类追求未知。古代天文仪器与现代科技呼应,体现历史与未来的对话。整体传达对科技成就的喜悦及对未来的美好期许,致敬中国科学家与宇航员,祝福祖国繁荣昌盛。