From c5ddf5985892f052263240a02e21215027e6ee05 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期三, 19 一月 2022 17:40:03 +0800
Subject: [PATCH] 修改readme
---
src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java | 26 +++++++++++++++++++++-----
1 files changed, 21 insertions(+), 5 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 c6e77ca..f0eca85 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,7 +1,9 @@
package com.genersoft.iot.vmp.conf.security;
+import com.genersoft.iot.vmp.conf.UserSetup;
+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;
@@ -14,6 +16,8 @@
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import java.util.List;
+
/**
* 閰嶇疆Spring Security
*/
@@ -22,8 +26,10 @@
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
- @Value("${userSettings.interfaceAuthentication}")
- private boolean interfaceAuthentication;
+ private final static Logger logger = LoggerFactory.getLogger(WebSecurityConfig.class);
+
+ @Autowired
+ private UserSetup userSetup;
@Autowired
private DefaultUserDetailsServiceImpl userDetailsService;
@@ -71,12 +77,13 @@
@Override
public void configure(WebSecurity web) {
- if (!interfaceAuthentication) {
+ if (!userSetup.isInterfaceAuthentication()) {
web.ignoring().antMatchers("**");
}else {
// 鍙互鐩存帴璁块棶鐨勯潤鎬佹暟鎹�
web.ignoring()
.antMatchers("/")
+ .antMatchers("/#/**")
.antMatchers("/static/**")
.antMatchers("/index.html")
.antMatchers("/doc.html") // "/webjars/**", "/swagger-resources/**", "/v3/api-docs/**"
@@ -84,6 +91,15 @@
.antMatchers("/swagger-resources/**")
.antMatchers("/v3/api-docs/**")
.antMatchers("/js/**");
+ List<String> interfaceAuthenticationExcludes = userSetup.getInterfaceAuthenticationExcludes();
+ for (String interfaceAuthenticationExclude : interfaceAuthenticationExcludes) {
+ if (interfaceAuthenticationExclude.split("/").length < 4 ) {
+ logger.warn("{}涓嶆弧瓒充袱绾х洰褰曪紝宸插拷鐣�", interfaceAuthenticationExclude);
+ }else {
+ web.ignoring().antMatchers(interfaceAuthenticationExclude);
+ }
+
+ }
}
}
@@ -111,7 +127,7 @@
http.headers().contentTypeOptions().disable();
http.authorizeRequests()
// 鏀捐鎺ュ彛
- .antMatchers("/#/**", "/api/user/login","/index/hook/**").permitAll()
+ .antMatchers("/api/user/login","/index/hook/**").permitAll()
// 闄や笂闈㈠鐨勬墍鏈夎姹傚叏閮ㄩ渶瑕侀壌鏉冭璇�
.anyRequest().authenticated()
// 寮傚父澶勭悊(鏉冮檺鎷掔粷銆佺櫥褰曞け鏁堢瓑)
--
Gitblit v1.8.0