statistics:增加网关转发

This commit is contained in:
YunaiV 2023-10-23 19:47:19 +08:00
parent 97103a8846
commit f826d117f8
4 changed files with 60 additions and 0 deletions

View File

@ -123,6 +123,19 @@ spring:
- Path=/app-api/trade/**
filters:
- RewritePath=/app-api/trade/v3/api-docs, /v3/api-docs
## statistics-server 服务
- id: statistics-admin-api # 路由的编号
uri: grayLb://statistics-server
predicates: # 断言,作为路由的匹配条件,对应 RouteDefinition 数组
- Path=/admin-api/statistics/**
filters:
- RewritePath=/admin-api/statistics/v3/api-docs, /v3/api-docs # 配置,保证转发到 /v3/api-docs
- id: statistics-app-api # 路由的编号
uri: grayLb://statistics-server
predicates: # 断言,作为路由的匹配条件,对应 RouteDefinition 数组
- Path=/app-api/statistics/**
filters:
- RewritePath=/app-api/statistics/v3/api-docs, /v3/api-docs
x-forwarded:
prefix-enabled: false # 避免 Swagger 重复带上额外的 /admin-api/system 前缀
@ -158,3 +171,6 @@ knife4j:
- name: trade-server
service-name: trade-server
url: /admin-api/trade/v3/api-docs
- name: statistics-server
service-name: statistics-server
url: /admin-api/statistics/v3/api-docs

View File

@ -0,0 +1,6 @@
/**
* 属于 statistics 模块的 framework 封装
*
* @author 芋道源码
*/
package cn.iocoder.yudao.module.statistics.framework;

View File

@ -0,0 +1,34 @@
package cn.iocoder.yudao.module.statistics.framework.security.config;
import cn.iocoder.yudao.framework.security.config.AuthorizeRequestsCustomizer;
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.ExpressionUrlAuthorizationConfigurer;
/**
* Statistics 模块的 Security 配置
*/
@Configuration("statisticsSecurityConfiguration")
public class SecurityConfiguration {
@Bean("statisticsAuthorizeRequestsCustomizer")
public AuthorizeRequestsCustomizer authorizeRequestsCustomizer() {
return new AuthorizeRequestsCustomizer() {
@Override
public void customize(ExpressionUrlAuthorizationConfigurer<HttpSecurity>.ExpressionInterceptUrlRegistry registry) {
// Swagger 接口文档
registry.antMatchers("/v3/api-docs/**").permitAll() // 元数据
.antMatchers("/swagger-ui.html").permitAll(); // Swagger UI
// Spring Boot Actuator 的安全配置
registry.antMatchers("/actuator").anonymous()
.antMatchers("/actuator/**").anonymous();
// Druid 监控
registry.antMatchers("/druid/**").anonymous();
}
};
}
}

View File

@ -0,0 +1,4 @@
/**
* 占位
*/
package cn.iocoder.yudao.module.statistics.framework.security.core;