From b4cc49db4f5e9668e64417f907cd69fda12e37fe Mon Sep 17 00:00:00 2001 From: winLsy <18332763730@163.com> Date: Wed, 17 Jan 2018 18:28:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0session=E5=A4=B1=E6=95=88?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../browser/config/BrowserSecurityConfig.java | 9 ++++++++- .../controller/BrowserSecurityController.java | 14 ++++++++++++++ .../src/main/resources/application.yml | 5 +++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/config/BrowserSecurityConfig.java b/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/config/BrowserSecurityConfig.java index 7b97ded..d604ab3 100644 --- a/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/config/BrowserSecurityConfig.java +++ b/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/config/BrowserSecurityConfig.java @@ -118,6 +118,11 @@ public class BrowserSecurityConfig extends WebSecurityConfigurerAdapter { //设置获取用户信息后登录的方式 .userDetailsService(userDetailsService) .and() + // session管理的配置 + .sessionManagement() + //定义session过期的时候处理的url + .invalidSessionUrl("/session/invalid") + .and() .authorizeRequests()//下面是权限配置 //当访问这个页面的时候不进行身份认证,对用户自定义的登录页也不进行权限认证 .antMatchers(SecurityConstants.MOBILE_LOGIN_PROCESSOR_URI @@ -130,7 +135,9 @@ public class BrowserSecurityConfig extends WebSecurityConfigurerAdapter { , "/upms/user" //用户注册或绑定的页面 ,securityProperties.getBrowser().getSignUpUrl() - ,"处理用户的注册绑定请求的url") + ,"处理用户的注册绑定请求的url" + //处理session请求的url + ,"/session/invalid") .permitAll() //任何请求 .anyRequest() diff --git a/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/controller/BrowserSecurityController.java b/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/controller/BrowserSecurityController.java index 404c815..8f0c2b7 100644 --- a/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/controller/BrowserSecurityController.java +++ b/boot-starter/boot-starter-security/boot-starter-security-browser/src/main/java/com/micro/fast/security/browser/controller/BrowserSecurityController.java @@ -25,6 +25,8 @@ import org.springframework.web.context.request.ServletWebRequest; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.util.HashMap; +import java.util.Map; /** * 自定义登录认证处理方式,当触发登录认证的时候跳转到这里 @@ -87,5 +89,17 @@ public class BrowserSecurityController { socialUserInfo.setHeadingUrl(connectionFromSession.getImageUrl()); return socialUserInfo; } + + /** + * 处理session过期 + * @return + */ + @GetMapping("/session/invalid") + @ResponseStatus(HttpStatus.UNAUTHORIZED) + public Map sessionInvalid(){ + HashMap result = new HashMap<>(); + result.put("msg","登录时间过长,请重新登录"); + return result; + } } diff --git a/boot-starter/boot-starter-security/boot-starter-security-demo/src/main/resources/application.yml b/boot-starter/boot-starter-security/boot-starter-security-demo/src/main/resources/application.yml index 0da9850..4a89526 100644 --- a/boot-starter/boot-starter-security/boot-starter-security-demo/src/main/resources/application.yml +++ b/boot-starter/boot-starter-security/boot-starter-security-demo/src/main/resources/application.yml @@ -20,4 +20,9 @@ ms: code: image: length: 4 +# 应用session的管理 +server: + session: +# 超时时间,单位是秒,但是不能小于一分钟 + timeout: 120