我使用 Spring Cloud Gateway 作为 UI 网关。安全配置:
@Bean
SecurityWebFilterChain springWebFilterChain(ServerHttpSecurity http) {
return http.httpBasic().and()
.formLogin().loginPage("/login")
.and()
.authorizeExchange().anyExchange().permitAll()
.and()
.build();
}
如何将当前用户凭据(用户名和角色)传播到底层服务?我是否需要在路由配置中添加一些自定义过滤器:
@Bean
RouteLocator routeLocator(RouteLocatorBuilder builder) {
return builder.routes()
.route("some-ui", r -> r.path("/some-ui-context-path/**")
.uri("lb://some-ui"))
.build();
}
? 是否有用于此目的的标准组件?