Spring 安全记住我

Spring Security Remember Me

我正在开发 Spring MVC 网络应用程序并配置了 Spring 安全性以拦截所有 URL 并对其进行身份验证。如果用户勾选“记住我”,自动登录用户而不重定向到登录页面。

说,我的登录 URL 是

example.com/signin

主页是

example.com/home

当用户输入任何 URL 到需要身份验证的有效网页(例如示例。com/home)时,如果 记住我已启用 ,他将被定向到该特定网页而无需再次进行身份验证。

但是当用户输入示例时。com/signin,即使他已经通过身份验证并被记住,它也只会显示登录表单。

如果他是 已通过身份验证并启用 remmeber-me 的 用户而不显示登录页面,我如何将他重定向到主页(示例。com/home)?

这些链接可能会帮助您使用 spring 安全性来实现记住我。

http://docs.spring.io/spring-security/site/docs/3.0.x/reference/remember-me.html http://www.mkyong.com/spring-security/spring-security-remember-me-example/

我添加了一个到控制器的重定向。如果这是正确的方法,请告诉我。

Authentication auth = SecurityContextHolder.getContext().getAuthentication();
            //if the user is already authenticated redirect him to the dashboard
            if(!(auth instanceof  AnonymousAuthenticationToken)){
                return "redirect:dashboard";
            }
            return "signin";