SpringSecurity的执行原理:当我们服务端接收到请求后,首先通过DelegatingFilterProxy代理对象交互,转发给springsecurity的执行链,由于他自带的执行链有16条,我们将不用的过滤器进行了排除,同时加入了我们自定义的过滤器,token全局过滤器,先判断token是否被篡改或过期,然后对token进行解析,将负载中的角色存储在SecurityContext上下文中,对加有@PreAuthorize注解的方法进行判断,如果我们上下文中的角色包含注解中的角色,则执行请求,否则抛出异常,返回403权限不足。
相关推荐
填满你的记忆7 分钟前
【从零开始——Redis 进化日志|Day7】双写一致性难题:数据库与缓存如何不再“打架”?(附 Canal/读写锁实战)灵感菇_8 分钟前
Android OkHttp框架全解析Coder_Boy_12 分钟前
基于SpringAI的在线考试系统-知识点管理模块完整优化方案莫问前路漫漫17 分钟前
Java Runtime Environment(JRE)全解析:Java 程序跨平台运行的核心基石进阶小白猿18 分钟前
Java技术八股学习Day22蒟蒻的贤22 分钟前
操作系统复习sanggou34 分钟前
Spring Boot 中基于 WebClient 的 SSE 流式接口实战未若君雅裁34 分钟前
SpringBoot2.x与SpringBoot3.x自动配置注册的差异赵八斤40 分钟前
java 项目中配置多个数据源小冷coding1 小时前
【Java】以 Java + Redis + MySQL 为技术栈,模拟电商商品详情的读写场景,Cache Aside+ 延迟双删 方案