From cba541169db1358cac7a2ab5d7e9c262e7cd8dfd Mon Sep 17 00:00:00 2001 From: liwq <122639653@qq.com> Date: Wed, 24 Sep 2025 10:09:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E7=BF=BB=E8=AF=91=E6=A8=A1?= =?UTF-8?q?=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tashow-module/tashow-module-translate/pom.xml | 65 +++++++++++++++++++ .../translate/TranslateServerApplication.java | 17 +++++ .../translate/controller/package-info.java | 1 + .../dal/dataobject/package-info.java | 2 + .../cloud/translate/dal/package-info.java | 1 + .../config/SecurityConfiguration.java | 44 +++++++++++++ .../translate/security/core/package-info.java | 4 ++ .../service/feishu/package-info.java | 1 + .../cloud/translate/service/package-info.java | 1 + .../src/main/resources/application-local.yaml | 16 +++++ .../src/main/resources/application.yaml | 12 ++++ 11 files changed, 164 insertions(+) create mode 100644 tashow-module/tashow-module-translate/pom.xml create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/TranslateServerApplication.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/controller/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/dataobject/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/config/SecurityConfiguration.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/core/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/feishu/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/package-info.java create mode 100644 tashow-module/tashow-module-translate/src/main/resources/application-local.yaml create mode 100644 tashow-module/tashow-module-translate/src/main/resources/application.yaml diff --git a/tashow-module/tashow-module-translate/pom.xml b/tashow-module/tashow-module-translate/pom.xml new file mode 100644 index 0000000..05580eb --- /dev/null +++ b/tashow-module/tashow-module-translate/pom.xml @@ -0,0 +1,65 @@ + + 4.0.0 + + com.tashow.cloud + tashow-module + ${revision} + + + tashow-module-translate + jar + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.tashow.cloud + tashow-framework-rpc + + + com.tashow.cloud + tashow-data-mybatis + + + com.tashow.cloud + tashow-framework-web + + + com.tashow.cloud + tashow-framework-env + + + com.tashow.cloud + tashow-infra-api + + + + com.tashow.cloud + tashow-framework-websocket + + + com.tashow.cloud + tashow-data-redis + + + com.tashow.cloud + tashow-framework-security + + + org.springframework.boot + spring-boot-starter-actuator + + + diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/TranslateServerApplication.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/TranslateServerApplication.java new file mode 100644 index 0000000..8d2c05c --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/TranslateServerApplication.java @@ -0,0 +1,17 @@ +package com.tashow.cloud.translate; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * 应用服务启动类 + */ +@SpringBootApplication +@EnableScheduling +public class TranslateServerApplication { + + public static void main(String[] args) { + SpringApplication.run(TranslateServerApplication.class, args); + } +} diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/controller/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/controller/package-info.java new file mode 100644 index 0000000..ae958ed --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/controller/package-info.java @@ -0,0 +1 @@ +package com.tashow.cloud.translate.controller; \ No newline at end of file diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/dataobject/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/dataobject/package-info.java new file mode 100644 index 0000000..0a104a6 --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/dataobject/package-info.java @@ -0,0 +1,2 @@ +package com.tashow.cloud.translate.dal.dataobject; +// 数据库对象 \ No newline at end of file diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/package-info.java new file mode 100644 index 0000000..270fb32 --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/dal/package-info.java @@ -0,0 +1 @@ +package com.tashow.cloud.translate.dal; \ No newline at end of file diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/config/SecurityConfiguration.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/config/SecurityConfiguration.java new file mode 100644 index 0000000..006dcbe --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/config/SecurityConfiguration.java @@ -0,0 +1,44 @@ +package com.tashow.cloud.translate.security.config; + +import com.tashow.cloud.infraapi.enums.ApiConstants; +import com.tashow.cloud.security.security.config.AuthorizeRequestsCustomizer; +import org.springframework.beans.factory.annotation.Value; +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; + +/** + * Infra 模块的 Security 配置 + */ +@Configuration(proxyBeanMethods = false, value = "infraSecurityConfiguration") +public class SecurityConfiguration { + + @Value("${spring.boot.admin.context-path:''}") + private String adminSeverContextPath; + + @Bean("infraAuthorizeRequestsCustomizer") + public AuthorizeRequestsCustomizer authorizeRequestsCustomizer() { + return new AuthorizeRequestsCustomizer() { + @Override + public void customize(AuthorizeHttpRequestsConfigurer.AuthorizationManagerRequestMatcherRegistry registry) { + // Spring Boot Actuator 的安全配置 + registry.requestMatchers("/actuator").permitAll() + .requestMatchers("/actuator/**").permitAll(); + // Druid 监控 + registry.requestMatchers("/druid/**").permitAll(); + // Spring Boot Admin Server 的安全配置 + registry.requestMatchers(adminSeverContextPath).permitAll() + .requestMatchers(adminSeverContextPath + "/**").permitAll(); + // 文件读取 + registry.requestMatchers(buildAdminApi("/infra/file/*/get/**")).permitAll(); + + // TODO 芋艿:这个每个项目都需要重复配置,得捉摸有没通用的方案 + // RPC 服务的安全配置 + registry.requestMatchers(ApiConstants.PREFIX + "/**").permitAll(); + } + + }; + } + +} diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/core/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/core/package-info.java new file mode 100644 index 0000000..1f91ce3 --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/security/core/package-info.java @@ -0,0 +1,4 @@ +/** + * 占位 + */ +package com.tashow.cloud.translate.security.core; diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/feishu/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/feishu/package-info.java new file mode 100644 index 0000000..b53383d --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/feishu/package-info.java @@ -0,0 +1 @@ +package com.tashow.cloud.translate.service.feishu; \ No newline at end of file diff --git a/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/package-info.java b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/package-info.java new file mode 100644 index 0000000..591023a --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/java/com/tashow/cloud/translate/service/package-info.java @@ -0,0 +1 @@ +package com.tashow.cloud.translate.service; \ No newline at end of file diff --git a/tashow-module/tashow-module-translate/src/main/resources/application-local.yaml b/tashow-module/tashow-module-translate/src/main/resources/application-local.yaml new file mode 100644 index 0000000..79777cb --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/resources/application-local.yaml @@ -0,0 +1,16 @@ +--- #################### 注册中心 + 配置中心相关配置 #################### + +spring: + cloud: + nacos: + server-addr: 43.139.42.137:8848 # Nacos 服务器地址 + username: nacos # Nacos 账号 + password: nacos # Nacos 密码 + discovery: # 【配置中心】配置项 + namespace: 5c8b8fe6-9a89-4ae3-975e-ef3bf560ff82 # 命名空间。这里使用 dev 开发环境 + group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP + metadata: + version: 1.0.0 # 服务实例的版本号,可用于灰度发布 + config: # 【注册中心】配置项 + namespace: 5c8b8fe6-9a89-4ae3-975e-ef3bf560ff82 # 命名空间。这里使用 dev 开发环境 + group: DEFAULT_GROUP # 使用的 Nacos 配置分组,默认为 DEFAULT_GROUP diff --git a/tashow-module/tashow-module-translate/src/main/resources/application.yaml b/tashow-module/tashow-module-translate/src/main/resources/application.yaml new file mode 100644 index 0000000..448e24a --- /dev/null +++ b/tashow-module/tashow-module-translate/src/main/resources/application.yaml @@ -0,0 +1,12 @@ +server: + port: 48086 +spring: + application: + name: translate-server + profiles: + active: local + config: + import: + - optional:classpath:application-${spring.profiles.active}.yaml # 加载【本地】配置 + - optional:nacos:application.yaml # 加载【Nacos】的配置 + - optional:nacos:${spring.application.name}-${spring.profiles.active}.yaml # 加载【Nacos】的配置