




资源介绍
视频数量:16个
总时长:2小时12分
课程介绍:
Spring Boot安全开发实战:从项目搭建到JWT鉴权全程通关
想象一个再常见不过的场景:你吭哧吭哧开发完一个Web应用,功能跑通了,Postman里请求来请求去都正常返回结果。然后某天随手一试,没登录也能访问到那些本该受保护的接口,用户数据像是没上锁的抽屉一样敞在外面。这时候你才意识到,认证和授权这块儿不能糊弄,得老老实实补上。
这套课程就是来解决这个问题的。两个小时多一点的时间,带着你从零开始,把一个带Spring Security保护的Spring Boot项目完整搭建出来。说是实战,是因为里面没有太多理论铺垫,直接动手写代码,跟着敲一遍就能掌握一套完整的安全开发流程,适合想在短时间内上手安全开发的同学。
第一部分是项目搭建和基础准备。我们会从Spring Initializr这个网站开始创建一个全新的项目,Java版本选21,用Maven来管理依赖。Lombok用来简化实体类的getter和setter书写,Spring Web用来暴露REST接口,Spring Data JPA负责数据持久化,Spring Security是整个安全框架的核心,H2数据库则让我们不用装任何外部数据库就能直接跑起来。每个依赖是干什么用的、为什么需要它,在视频里都会讲清楚。环境配好之后,就进入User实体的创建,用户表需要哪些字段,比如用户名、密码这些,密码字段怎么标注JPA映射,类级别的注解怎么加,这些细节都会一步步演示。实体建好之后,再写对应的Repository接口,基础的查询方法就具备了。
第二部分是整套课程的核心,也就是JWT的实现。很多同学一听到JWT就犯怵,其实拆开来看就是三块东西。先写一个JWT的工具类,负责生成token和校验token,里面涉及签名的算法选择、过期时间的配置、claims里要放哪些用户信息这些细节,都会讲到。然后是JwtAuthenticationFilter这个拦截器,每个请求过来都要先过它这一关,从请求头里把token掏出来,验证签名是否合法、有效期是否过期,验证通过就把用户信息塞到Spring Security的安全上下文里,框架后续就知道当前请求是谁发起的。最后是SecurityConfig这个配置类,把哪些路径要放行、哪些要认证、过滤器怎么注册到过滤链里、密码用什么加密方式存储,全都配置到位。这一套走完,安全框架的骨架就立起来了。
第三部分实现登录功能。登录说起来不复杂,就是接收用户名和密码,校验一下,返回一个token。但要做扎实,细节其实不少。用户提交登录请求,我们从数据库里查用户,密码用BCrypt这种单向加密的方式比对,校验通过就用JWT工具类生成token返回。前端拿到这个token之后存在本地,后续每次请求都放到Authorization请求头里带过来。后端怎么验证这个token,前面写好的过滤器就派上用场了。这部分用两节课的时间把登录功能完整实现,再用Postman模拟整个流程,从登录拿到token,到带着token访问受保护接口,每一步都会测试一遍,看看没有token时接口是不是真的被拦住,有token时能不能顺利返回数据。最后再加一个简单的Demo控制器,用GET接口演示一下认证前后的访问差异,让你直观感受到Spring Security起作用的过程。
第四部分是业务功能开发,任务管理API。一个用户可以有很多任务,一个任务只能归属于一个用户,这种多对一的关系在JPA里怎么用ManyToOne注解映射,是用懒加载还是急加载,背后的考量都会讲到。Task实体建好之后,写对应的TaskService和TaskRepository,把创建任务、查询所有任务、按ID查询单个任务这些操作都封装好。然后是Controller层,定义好接口路径和请求方法,再用Postman把整个流程跑一遍,亲眼看看token鉴权是不是真的管用。这部分用了五个视频的篇幅,把任务API的各种操作都覆盖到位,包括实现和测试两个角度,中间还会穿插一些接口联调的过程。
第五部分是收尾,实现删除任务的接口。登录、查询、新增、删除,到这里整个项目的核心功能就完整了。每一节课后面都配有一个小测验,学完一个知识点马上做几道题巩固一下,这样知识点的吸收会更扎实。
整套课程适合有Spring Boot基础的开发人员,特别是想在项目里落地JWT鉴权机制的同学。如果你在做一个需要登录注册的后端服务,或者你想弄清楚JWT到底怎么用、Spring Security怎么配置,这两个多小时的内容跟着敲一遍代码,就能把相关技能真正变成自己的东西。