From 24426ef322c84582bd13006316694c5cc370d1b4 Mon Sep 17 00:00:00 2001
From: 64850858 <648540858@qq.com>
Date: 星期三, 07 七月 2021 10:28:41 +0800
Subject: [PATCH] 配置文件示例修正
---
src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java | 41 +++++++++++++++++++++++++++++------------
1 files changed, 29 insertions(+), 12 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 1de14e6..2841681 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,5 +1,6 @@
package com.genersoft.iot.vmp.conf.security;
+import com.genersoft.iot.vmp.conf.UserSetup;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -13,6 +14,8 @@
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+import java.util.List;
+
/**
* 閰嶇疆Spring Security
*/
@@ -20,6 +23,9 @@
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
+
+ @Autowired
+ private UserSetup userSetup;
@Autowired
private DefaultUserDetailsServiceImpl userDetailsService;
@@ -66,18 +72,27 @@
**/
@Override
public void configure(WebSecurity web) {
- // 鍙互鐩存帴璁块棶鐨勯潤鎬佹暟鎹�
- web.ignoring()
- .antMatchers("/")
- .antMatchers("/css/**")
- .antMatchers("/img/**")
- .antMatchers("/fonts/**")
- .antMatchers("/index.html")
- .antMatchers("/doc.html") // "/webjars/**", "/swagger-resources/**", "/v3/api-docs/**"
- .antMatchers("/webjars/**")
- .antMatchers("/swagger-resources/**")
- .antMatchers("/v3/api-docs/**")
- .antMatchers("/js/**");
+
+ 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/**"
+ .antMatchers("/webjars/**")
+ .antMatchers("/swagger-resources/**")
+ .antMatchers("/v3/api-docs/**")
+ .antMatchers("/js/**");
+ List<String> interfaceAuthenticationExcludes = userSetup.getInterfaceAuthenticationExcludes();
+ System.out.println(interfaceAuthenticationExcludes.size());
+ for (String interfaceAuthenticationExclude : interfaceAuthenticationExcludes) {
+ web.ignoring().antMatchers(interfaceAuthenticationExclude);
+ }
+ }
}
/**
@@ -100,6 +115,8 @@
@Override
protected void configure(HttpSecurity http) throws Exception {
http.cors().and().csrf().disable();
+ // 璁剧疆鍏佽娣诲姞闈欐�佹枃浠�
+ http.headers().contentTypeOptions().disable();
http.authorizeRequests()
// 鏀捐鎺ュ彛
.antMatchers("/api/user/login","/index/hook/**").permitAll()
--
Gitblit v1.8.0