SpringSecurity的执行原理:当我们服务端接收到请求后,首先通过DelegatingFilterProxy代理对象交互,转发给springsecurity的执行链,由于他自带的执行链有16条,我们将不用的过滤器进行了排除,同时加入了我们自定义的过滤器,token全局过滤器,先判断token是否被篡改或过期,然后对token进行解析,将负载中的角色存储在SecurityContext上下文中,对加有@PreAuthorize注解的方法进行判断,如果我们上下文中的角色包含注解中的角色,则执行请求,否则抛出异常,返回403权限不足。
相关推荐
程序员贺加贝1 分钟前
报表大-IN-优化-一条-product_profile-超大-IN-SQL-背后的报表任务治理霸道流氓气质6 分钟前
Spring AI多模型路由与动态切换艺杯羹9 分钟前
全栈信创落地实录:基于银河麒麟V10与达梦数据库DM8的SpringBoot工业级适配指南鲨鱼辣钊4 小时前
【FastAPI筑基-Day19】APScheduler定时任务全实战|自动执行、动态启停、后台常驻学长毕业设计8 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)东小西9 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度东小西9 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)许彰午9 小时前
22-DataCenter报文序列化2601_962065259 小时前
[MySQL] SQL优化之性能分析小范同学_9 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解