spring-security - Spring安全缓存基本身份验证?不验证后续请求

标签 spring-security spring-boot

我正在使用具有基本身份验证( Spring 安全性)的 Spring Boot 。我正在做一些测试,似乎如果我使用正确的用户名和密码(通过 postman )向我的 REST 端点发送单个请求,然后我删除用户名和密码或将其设置为不正确的用户名和密码,我的所有请求仍然经过身份验证?

我希望 Spring Security 对每个请求进行检查,如果 auth header 丢失或更改,它应该返回 HTTP 401。有人可以帮忙解释为什么会发生这种情况吗?是否有某种缓存正在进行?我正在使用 inMemoryAuthentication()。我也禁用了 CSRF。

最佳答案

我想我找到了解决方案。您必须将 session 设置为无状态。像这样:

 http
     .sessionManagement()
     .sessionCreationPolicy(SessionCreationPolicy.STATELESS);

关于spring-security - Spring安全缓存基本身份验证?不验证后续请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39019029/

相关文章:

spring - 如何在Spring Expression Language(SpEL)中连接两个字符串

java - Struts2 + Spring Security 2.06 : Valuestack is null when attempting to use @Secured on an Action method

spring - dockerized 环境中的 Keycloak 和 Spring Boot Web 应用程序

java - Spring Boot 表单数据与 FreeMarker 绑定(bind)列表

spring-security - Spring Security Webflux/响应式(Reactive)异常处理

java - 使用 RequestHeaderAuthenticationFilter 时如何测试 Internet Explorer?

java - HttpServletResponse#addHeader 有什么问题吗?

java - 服务器使用 Spring-MVC 运行后,无法提供添加到我的文件系统中的文件

spring-boot - 如何在Gradle中使用Apache CXF + Spring Boot构建SOAP WS?

spring-boot - 在 spring boot 和 OAuth2 应用程序中禁用同一用户的多次登录