From 3d6db7478d79b824f93708f936c598cc622221f2 Mon Sep 17 00:00:00 2001
From: mk1990 <153958232@qq.com>
Date: 星期一, 20 六月 2022 15:10:31 +0800
Subject: [PATCH] fix设备状态查询接口
---
src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java | 41 ++++++++++++++++++++++++++++++-----------
1 files changed, 30 insertions(+), 11 deletions(-)
diff --git a/src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java b/src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java
index 40d588f..a4bbdba 100644
--- a/src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java
+++ b/src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java
@@ -1,8 +1,9 @@
package com.genersoft.iot.vmp.conf.security;
-import com.genersoft.iot.vmp.conf.UserSetup;
+import com.genersoft.iot.vmp.conf.UserSetting;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.authentication.AuthenticationManager;
@@ -15,16 +16,21 @@
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import java.util.List;
+
/**
* 閰嶇疆Spring Security
+ * @author lin
*/
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
+ private final static Logger logger = LoggerFactory.getLogger(WebSecurityConfig.class);
+
@Autowired
- private UserSetup userSetup;
+ private UserSetting userSetting;
@Autowired
private DefaultUserDetailsServiceImpl userDetailsService;
@@ -72,7 +78,7 @@
@Override
public void configure(WebSecurity web) {
- if (!userSetup.isInterfaceAuthentication()) {
+ if (!userSetting.isInterfaceAuthentication()) {
web.ignoring().antMatchers("**");
}else {
// 鍙互鐩存帴璁块棶鐨勯潤鎬佹暟鎹�
@@ -86,6 +92,15 @@
.antMatchers("/swagger-resources/**")
.antMatchers("/v3/api-docs/**")
.antMatchers("/js/**");
+ List<String> interfaceAuthenticationExcludes = userSetting.getInterfaceAuthenticationExcludes();
+ for (String interfaceAuthenticationExclude : interfaceAuthenticationExcludes) {
+ if (interfaceAuthenticationExclude.split("/").length < 4 ) {
+ logger.warn("{}涓嶆弧瓒充袱绾х洰褰曪紝宸插拷鐣�", interfaceAuthenticationExclude);
+ }else {
+ web.ignoring().antMatchers(interfaceAuthenticationExclude);
+ }
+
+ }
}
}
@@ -118,15 +133,19 @@
.anyRequest().authenticated()
// 寮傚父澶勭悊(鏉冮檺鎷掔粷銆佺櫥褰曞け鏁堢瓑)
.and().exceptionHandling()
- .authenticationEntryPoint(anonymousAuthenticationEntryPoint)//鍖垮悕鐢ㄦ埛璁块棶鏃犳潈闄愯祫婧愭椂鐨勫紓甯稿鐞�
+ //鍖垮悕鐢ㄦ埛璁块棶鏃犳潈闄愯祫婧愭椂鐨勫紓甯稿鐞�
+ .authenticationEntryPoint(anonymousAuthenticationEntryPoint)
// .accessDeniedHandler(accessDeniedHandler)//鐧诲綍鐢ㄦ埛娌℃湁鏉冮檺璁块棶璧勬簮
- // 鐧诲叆
- .and().formLogin().permitAll()//鍏佽鎵�鏈夌敤鎴�
- .successHandler(loginSuccessHandler)//鐧诲綍鎴愬姛澶勭悊閫昏緫
- .failureHandler(loginFailureHandler)//鐧诲綍澶辫触澶勭悊閫昏緫
+ // 鐧诲叆 鍏佽鎵�鏈夌敤鎴�
+ .and().formLogin().permitAll()
+ //鐧诲綍鎴愬姛澶勭悊閫昏緫
+ .successHandler(loginSuccessHandler)
+ //鐧诲綍澶辫触澶勭悊閫昏緫
+ .failureHandler(loginFailureHandler)
// 鐧诲嚭
- .and().logout().logoutUrl("/api/user/logout").permitAll()//鍏佽鎵�鏈夌敤鎴�
- .logoutSuccessHandler(logoutHandler)//鐧诲嚭鎴愬姛澶勭悊閫昏緫
+ .and().logout().logoutUrl("/api/user/logout").permitAll()
+ //鐧诲嚭鎴愬姛澶勭悊閫昏緫
+ .logoutSuccessHandler(logoutHandler)
.deleteCookies("JSESSIONID")
// 浼氳瘽绠$悊
// .and().sessionManagement().invalidSessionStrategy(invalidSessionHandler) // 瓒呮椂澶勭悊
--
Gitblit v1.8.0