Spring Security工作原理(三)

发布时间:2024年01月22日

在这里插入图片描述

在认证之间保存请求

如处理安全异常中所示,当请求没有认证且需要认证资源时,需要保存请求以便在认证成功后重新请求受保护的资源。在Spring Security中,这是通过使用RequestCache实现来保存HttpServletRequest来实现的。

RequestCache

HttpServletRequest被保存在RequestCache中。用户成功认证后,RequestCache被用于重放原始请求。RequestCacheAwareFilter用于使用RequestCache保存HttpServletRequest。

默认情况下,会使用HttpSessionRequestCache。下面的代码示范了如何自定义RequestCache实现,以便在存在名为continue的参数时检查HttpSession中是否保存了请求。

只有在存在 “continue” 参数时,RequestCache 才会检查是否保存了请求。

@Bean
DefaultSecurityFilterChain springSecurity(HttpSecurity http
文章来源:https://blog.csdn.net/uniquewonderq/article/details/135749879
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。