java - Spring 安全: Delete cookie for logout

标签 java spring

我为我的 Spring boot 应用程序使用以下安全配置:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
        .csrf().disable()
        .authorizeRequests()
            .antMatchers("/login").permitAll()
        .and()
        .authorizeRequests()
            .antMatchers("/signup").permitAll()
        .and()
        .authorizeRequests()
            .anyRequest().authenticated()
        .and()
            .logout().logoutUrl("/logout").logoutSuccessUrl("/login").deleteCookies("auth_code").invalidateHttpSession(true)
        .and()
        // We filter the api/signup requests
        .addFilterBefore(
            new JWTSignupFilter("/signup", authenticationManager(),
                    accountRepository, passwordEncoder),
            UsernamePasswordAuthenticationFilter.class)
        // We filter the api/login requests
        .addFilterBefore(
            new JWTLoginFilter("/login", authenticationManager()),
            UsernamePasswordAuthenticationFilter.class)
        // And filter other requests to check the presence of JWT in
        // header
        .addFilterBefore(new JWTAuthenticationFilter(userDetailsServiceBean()),
            UsernamePasswordAuthenticationFilter.class);
} 

当我注销时,我想删除登录期间设置的cookie。我使用 deleteCookie,但在 header 中没有删除登录期间设置的 cookie 的概念。为什么 ?

我应该如何告诉浏览器删除cookie?

现在,响应的 header 包含:

Set-Cookie →JSESSIONID=E4060381B435217F7D68EAAE82903BB0;path=/;Secure;HttpOnly

我应该将 cookie 的过期时间设置为当前日期之后的日期吗?

最佳答案

您不需要删除 cookie。一旦 session 在服务器上关闭,cookie 就无法再使用,并且如果用户返回,cookie 将被替换。只要让它正常过期即可(默认情况下,当浏览器关闭时)。

关于java - Spring 安全: Delete cookie for logout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43773840/

相关文章:

java - 在启用 Spring Data Mongodb 审核的情况下运行测试

java - Tomcat启动报错如何解决?

java - Spring ws - 每个属性都返回 null

Spring MVC 将上传的 MultipartFile 保存到特定文件夹

java - 获取所有路径变量

java - 创建一个方法来确定两个数字中较大的一个

java - 平滑后的GPS数据对比

java - 将此对象传递给事件处理程序

java - 如何使用java代码从msinfo32文件中提取特定行

spring - 使用 Spring Data Rest + Spring Security 的 REST 端点的 Thymeleaf 异常解析模板