From 01df90000bede4ee9662f059dc4820f63883e132 Mon Sep 17 00:00:00 2001 From: hongawen <83944980@qq.com> Date: Wed, 4 Mar 2026 19:29:53 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MsgpushOperateLogConfiguration.java | 2 +- .../MsgpushWebSecurityConfigurerAdapter.java | 1 - .../module/push/enums/ApiConstants.java | 23 +++++++++++ .../config/SecurityConfiguration.java | 39 +++++++++++++++++++ 4 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 msgpush-module-push/msgpush-module-push-api/src/main/java/com/njcn/msgpush/module/push/enums/ApiConstants.java create mode 100644 msgpush-module-push/msgpush-module-push-server/src/main/java/com/njcn/msgpush/module/push/framework/security/config/SecurityConfiguration.java diff --git a/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/operatelog/config/MsgpushOperateLogConfiguration.java b/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/operatelog/config/MsgpushOperateLogConfiguration.java index 5352fd4..2544033 100644 --- a/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/operatelog/config/MsgpushOperateLogConfiguration.java +++ b/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/operatelog/config/MsgpushOperateLogConfiguration.java @@ -13,7 +13,7 @@ import org.springframework.context.annotation.Primary; * * @author HUIHUI */ -@EnableLogRecord(tenant = "") // 貌似用不上 tenant 这玩意给个空好啦 +@EnableLogRecord(tenant = "admin") // 貌似用不上 tenant 这玩意给个空好啦 @AutoConfiguration @Slf4j public class MsgpushOperateLogConfiguration { diff --git a/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/security/config/MsgpushWebSecurityConfigurerAdapter.java b/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/security/config/MsgpushWebSecurityConfigurerAdapter.java index 2179122..e48adbd 100644 --- a/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/security/config/MsgpushWebSecurityConfigurerAdapter.java +++ b/msgpush-framework/msgpush-spring-boot-starter-security/src/main/java/com/njcn/msgpush/framework/security/config/MsgpushWebSecurityConfigurerAdapter.java @@ -8,7 +8,6 @@ import com.google.common.collect.Multimap; import jakarta.annotation.Resource; import jakarta.annotation.security.PermitAll; import jakarta.servlet.DispatcherType; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.AutoConfiguration; import org.springframework.boot.autoconfigure.AutoConfigureOrder; import org.springframework.context.ApplicationContext; diff --git a/msgpush-module-push/msgpush-module-push-api/src/main/java/com/njcn/msgpush/module/push/enums/ApiConstants.java b/msgpush-module-push/msgpush-module-push-api/src/main/java/com/njcn/msgpush/module/push/enums/ApiConstants.java new file mode 100644 index 0000000..8cd3228 --- /dev/null +++ b/msgpush-module-push/msgpush-module-push-api/src/main/java/com/njcn/msgpush/module/push/enums/ApiConstants.java @@ -0,0 +1,23 @@ +package com.njcn.msgpush.module.push.enums; + +import com.njcn.msgpush.framework.common.enums.RpcConstants; + +/** + * API 相关的枚举 + * + * @author hongawen + */ +public class ApiConstants { + + /** + * 服务名 + * + * 注意,需要保证和 spring.application.name 保持一致 + */ + public static final String NAME = "push-server"; + + public static final String PREFIX = RpcConstants.RPC_API_PREFIX + "/push"; + + public static final String VERSION = "1.0.0"; + +} diff --git a/msgpush-module-push/msgpush-module-push-server/src/main/java/com/njcn/msgpush/module/push/framework/security/config/SecurityConfiguration.java b/msgpush-module-push/msgpush-module-push-server/src/main/java/com/njcn/msgpush/module/push/framework/security/config/SecurityConfiguration.java new file mode 100644 index 0000000..629fe24 --- /dev/null +++ b/msgpush-module-push/msgpush-module-push-server/src/main/java/com/njcn/msgpush/module/push/framework/security/config/SecurityConfiguration.java @@ -0,0 +1,39 @@ +package com.njcn.msgpush.module.push.framework.security.config; + +import com.njcn.msgpush.framework.security.config.AuthorizeRequestsCustomizer; +import com.njcn.msgpush.module.push.enums.ApiConstants; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configurers.AuthorizeHttpRequestsConfigurer; + +/** + * Push 模块的 Security 配置 + */ +@Configuration(proxyBeanMethods = false, value = "pushSecurityConfiguration") +public class SecurityConfiguration { + + @Bean("pushAuthorizeRequestsCustomizer") + public AuthorizeRequestsCustomizer authorizeRequestsCustomizer() { + return new AuthorizeRequestsCustomizer() { + + @Override + public void customize(AuthorizeHttpRequestsConfigurer.AuthorizationManagerRequestMatcherRegistry registry) { + // Swagger 接口文档 + registry.requestMatchers("/v3/api-docs/**").permitAll() + .requestMatchers("/webjars/**").permitAll() + .requestMatchers("/swagger-ui").permitAll() + .requestMatchers("/swagger-ui/**").permitAll(); + // Druid 监控 + registry.requestMatchers("/druid/**").permitAll(); + // Spring Boot Actuator 的安全配置 + registry.requestMatchers("/actuator").permitAll() + .requestMatchers("/actuator/**").permitAll(); + // RPC 服务的安全配置 + registry.requestMatchers(ApiConstants.PREFIX + "/**").permitAll(); + } + + }; + } + +}