From 689d7c0cc4f4dcee6c6588263f1c90eca81942e7 Mon Sep 17 00:00:00 2001
From: panlinlin <648540858@qq.com>
Date: 星期一, 26 四月 2021 09:47:21 +0800
Subject: [PATCH] 添加接口鉴权开关

---
 src/main/java/com/genersoft/iot/vmp/conf/security/WebSecurityConfig.java |   29 +++++++++++++++++++----------
 src/main/resources/application-dev.yml                                   |    2 ++
 2 files changed, 21 insertions(+), 10 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 ebeefd4..aa642c6 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,6 +1,7 @@
 package com.genersoft.iot.vmp.conf.security;
 
 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;
@@ -20,6 +21,9 @@
 @EnableWebSecurity
 @EnableGlobalMethodSecurity(prePostEnabled = true)
 public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
+
+    @Value("${userSettings.interfaceAuthentication}")
+    private boolean interfaceAuthentication;
 
     @Autowired
     private DefaultUserDetailsServiceImpl userDetailsService;
@@ -66,16 +70,21 @@
      **/
     @Override
     public void configure(WebSecurity web) {
-        // 鍙互鐩存帴璁块棶鐨勯潤鎬佹暟鎹�
-        web.ignoring()
-                .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/**");
+
+        if (!interfaceAuthentication) {
+            web.ignoring().antMatchers("**");
+        }else {
+            // 鍙互鐩存帴璁块棶鐨勯潤鎬佹暟鎹�
+            web.ignoring()
+                    .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/**");
+        }
     }
 
     /**
diff --git a/src/main/resources/application-dev.yml b/src/main/resources/application-dev.yml
index b9df098..e28925b 100644
--- a/src/main/resources/application-dev.yml
+++ b/src/main/resources/application-dev.yml
@@ -104,6 +104,8 @@
     playTimeout: 3000
     # 绛夊緟闊宠棰戠紪鐮佷俊鎭啀杩斿洖锛� true锛� 鍙互鏍规嵁缂栫爜閫夋嫨鍚堥�傜殑鎾斁鍣紝false锛� 鍙互鏇村揩鐐规挱
     waitTrack: false
+    # 鏄惁寮�鍚帴鍙i壌鏉�
+    interfaceAuthentication: true
 
 # 鍦ㄧ嚎鏂囨。锛� swagger-ui锛堢敓浜х幆澧冨缓璁叧闂級
 springfox:

--
Gitblit v1.8.0