Spring Boot Actuator未授权访问排查和整改指南
import org.springframework.boot.actuate.autoconfigure.security.servlet.ManagementWebSecurityAutoConfiguration;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
public class ActuatorSecurityConfiguration extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
// 允许对所有Actuator端点的公开访问
http.authorizeRequests()
.requestMatchers(EndpointRequest.toAnyEndpoint()).permitAll()
// 对于其他请求,使用默认的Spring Security配置
.anyRequest().authenticated();
// 禁用 CSRF 保护,因为Actuator不需要CSRF保护
http.csrf().disable();
}
}
这段代码定义了一个配置类ActuatorSecurityConfiguration
,它扩展了WebSecurityConfigurerAdapter
并重写了configure
方法。它允许对所有Actuator端点的公开访问,同时保留了Spring Security的其他安全配置。注意,这里我们关闭了CSRF保护,因为Actuator端点通常不需要这种保护来提高安全性。
评论已关闭