SpringSecurity的执行原理:当我们服务端接收到请求后,首先通过DelegatingFilterProxy代理对象交互,转发给springsecurity的执行链,由于他自带的执行链有16条,我们将不用的过滤器进行了排除,同时加入了我们自定义的过滤器,token全局过滤器,先判断token是否被篡改或过期,然后对token进行解析,将负载中的角色存储在SecurityContext上下文中,对加有@PreAuthorize注解的方法进行判断,如果我们上下文中的角色包含注解中的角色,则执行请求,否则抛出异常,返回403权限不足。
相关推荐
evans在进步3 分钟前
HashMap 为什么线程不安全?ConcurrentHashMap 如何解决?我命由我1234514 分钟前
匈牙利命名法闲猫18 分钟前
LangChain / Integrations / Integrations by component / Tool小田的博客19 分钟前
SAP MM 供应商银行主数据更新报错!message R1228!范什么特西1 小时前
知识总结03空谷有来人2 小时前
Ubuntu22.04安装jdk17,配置环境变量程序员雷欧2 小时前
ThreadPoolExecutor 深度解析:从核心参数到源码实现的全面剖析谢尔登2 小时前
分享一些我常用的SkillAaronJonah2 小时前
企业级线程池 traceId 闭环:上下文传递与全链路追踪实战