SpringSecurity6从入门到实战之Filter过滤器回顾

SpringSecurity6从入门到实战之Filter过滤器回顾

如果没有SpringSecurity这个框架,我们应该通过什么去实现客户端向服务端发送请求时,先检查用户是否登录,登录了才能访问.否则重定向到登录页面

流程图如下

过滤器回顾

Spring Security 对 Servlet 的支持是基于 Servlet Filter 的,所以先看一下过滤器的一般作用是很有帮助的。下图显示了单个HTTP请求的处理程序的典型分层。

以上是过滤链的使用,当所有的filter都走完后最终会发送请求到达Servlet

过滤器 Filter:

  • 1.必须实现 Filter 接口
  • 2.过滤器在访问 Web 资源可以对请求进行拦截,并对请求进行预处理和后处理操作,然后将请求传递给目标资源。
  • 3.如,强制登录过滤器,访问 web 资源时先对请求进行登录检查,已登录可以往后访问,未登录重定向回登录页。

过滤器链 FilterChain:

  • 1.在对一个 web 资源进行拦截处理时的多个 Filter 和 web 资源组成一个 FilterChain 过滤器链。
  • 2.FilterChain 中的 doFilter() 方法非常重要,用于让 Filter 链上的当前过滤器放行,使请求或响应进入下一 Filter 或 web 资源。
相关推荐
麦兜*35 分钟前
Spring Boot 企业级动态权限全栈深度解决方案,设计思路,代码分析
java·spring boot·后端·spring·spring cloud·性能优化·springcloud
ruan1145142 小时前
MySQL4种隔离级别
java·开发语言·mysql
Hellyc6 小时前
基于模板设计模式开发优惠券推送功能以及对过期优惠卷进行定时清理
java·数据库·设计模式·rocketmq
lifallen6 小时前
Paimon LSM Tree Compaction 策略
java·大数据·数据结构·数据库·算法·lsm-tree
hdsoft_huge6 小时前
SpringBoot 与 JPA 整合全解析:架构优势、应用场景、集成指南与最佳实践
java·spring boot·架构
百锦再7 小时前
详细解析 .NET 依赖注入的三种生命周期模式
java·开发语言·.net·di·注入·模式·依赖
程序员的世界你不懂7 小时前
基于Java+Maven+Testng+Selenium+Log4j+Allure+Jenkins搭建一个WebUI自动化框架(2)对框架加入业务逻辑层
java·selenium·maven
有没有没有重复的名字8 小时前
线程安全的单例模式与读者写者问题
java·开发语言·单例模式
张先shen8 小时前
Elasticsearch RESTful API入门:基础搜索与查询DSL
大数据·spring boot·elasticsearch·搜索引擎·全文检索·restful
慕木兮人可9 小时前
Docker部署MySQL镜像
spring boot·后端·mysql·docker·ecs服务器