From 09b8e33a1b2a1f3759b08ae1e37da9769a1aaabf Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期三, 06 十二月 2023 10:43:10 +0800 Subject: [PATCH] 海康接口对接开发 --- server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java | 43 ++++++++++++++++++++++++++++++++++++++----- 1 files changed, 38 insertions(+), 5 deletions(-) diff --git a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java index edfd770..60dcdcc 100644 --- a/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java +++ b/server/dmvisit_admin/src/main/java/com/doumee/config/shiro/ShiroConfig.java @@ -10,8 +10,12 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.StringRedisSerializer; import javax.servlet.Filter; +import java.io.Serializable; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; @@ -39,6 +43,20 @@ @Autowired private ShiroRealm shiroRealm; + @Bean("sessionRedisTemplate") + public RedisTemplate<Object, Serializable> sessionRedisTemplate(RedisConnectionFactory redisConnectionFactory) { + RedisTemplate<Object, Serializable> redisTemplate = new RedisTemplate<>(); + redisTemplate.setConnectionFactory(redisConnectionFactory); + // 榛樿搴忓垪鍖栨柟寮� + redisTemplate.setDefaultSerializer(new StringRedisSerializer()); + // 鍊煎簭鍒楀寲鏂瑰紡 + ShiroSessionSerializer serializer = new ShiroSessionSerializer(); + redisTemplate.setValueSerializer(serializer); + redisTemplate.setHashValueSerializer(serializer); + redisTemplate.afterPropertiesSet(); + return redisTemplate; + } + @Bean public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator() { DefaultAdvisorAutoProxyCreator autoProxyCreator = new DefaultAdvisorAutoProxyCreator(); @@ -50,6 +68,9 @@ public SessionManager sessionManager() { ShiroSessionManager sessionManager = new ShiroSessionManager(); sessionManager.setSessionDAO(shiroSessionDAO); + sessionManager.setGlobalSessionTimeout(sessionExpireTime*1000); + // 鍒犻櫎澶辨晥鐨剆ession + sessionManager.setDeleteInvalidSessions(true); return sessionManager; } @@ -66,20 +87,32 @@ public ShiroFilterFactoryBean shiroFilterFactoryBean(SecurityManager securityManager) { ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean(); shiroFilterFactoryBean.setSecurityManager(securityManager); - Map<String, String> map = new HashMap<>(); + Map<String, String> map = new LinkedHashMap<>(); // 璺緞鎷︽埅閰嶇疆 map.put("/system/login", "anon"); + map.put("/system/syncLingCountData", "anon"); + map.put("/system/wxLogin", "anon"); + map.put("/system/wxProgramLogin", "anon"); + map.put("/system/wxAccountLogin", "anon"); + map.put("/system/initCompany", "anon"); map.put("/system/logout", "anon"); map.put("/common/captcha", "anon"); - //鏂囦欢涓婁紶鍙栨秷鎷︽埅 - map.put("/public/**", "anon"); - + map.put("/statistics/**", "anon"); + map.put("/dingding/push", "anon"); +// map.put("/ext/workorderExt/freshStatistics", "anon"); + map.put("/dingding/jsapiTicket", "anon"); + map.put("/dingding/ddLogin", "anon"); + map.put("/dingding/getDingdingCorpId", "anon"); + map.put("/lingyang/login", "anon"); + map.put("/lingyang/loginDemo", "anon"); + map.put("/lingyang/importBatch", "anon"); + map.put("/edgp/**", "anon"); // - 鏀捐swagger map.put("/doc.html", "anon"); map.put("/webjars/**", "anon"); + map.put("/template/**", "anon"); map.put("/swagger-resources/**", "anon"); map.put("/v2/api-docs/**", "anon"); - map.put("/wgListener/**", "anon"); // - 鍏朵粬鎺ュ彛缁熶竴鎷︽埅 map.put("/**", "authc"); shiroFilterFactoryBean.setFilterChainDefinitionMap(map); -- Gitblit v1.9.3