Sping Boot 应用程序具有以下Web安全配置:
@EnableWebSecurity
@Configuration
public class WebSecurityConfiguration extends WebSecurityConfigurerAdapter
{
@Override
public void configure(WebSecurity web) throws Exception
{
web.ignoring().antMatchers("/actuator/**");
}
@Override
protected void configure(HttpSecurity http) throws Exception
{
http.authorizeRequests().antMatchers("/").permitAll();
http.csrf().disable();
}
}
application.properites:
management.endpoints.web.exposure.include=health,info,loggers
management.endpoints.web.base-path=/actuator
management.endpoint.health.show-details=always
启动应用程序后,我可以在日志中看到:
[ main] o.s.b.a.e.web.EndpointLinksResolver : Exposing 3 endpoint(s) beneath base path '/actuator'
但随后:
bash-5.1$ curl -I --header 'Content-Type: application/json' -X "GET" "http://localhost:8083/actuator/health"
HTTP/1.1 200
Content-Type: application/vnd.spring-boot.actuator.v3+json
Transfer-Encoding: chunked
Date: Thu, 09 Dec 2021 22:26:48 GMT
有没有什么想法为什么它会空出来?
2条答案
按热度按时间iswrvxsc1#
Because:
...says:
;)
So with:
(omitting
-I
) we get the expected:rwqw0loc2#
最新的 Spring Boot 需要设置两件事:
1-在
application.properties
文件中公开端点:如果需要,可以使用通配符并公开所有端点
2-启用
application.properties
中的信息环境:您可以设置自定义信息属性: