尝试在springboot上调用/ shutdown时,请重新查询授权标头,而不是正确关闭应用程序

时间:2017-12-08 03:38:56

标签: java spring spring-boot

我在spring-boot上有app 加入

endpoints.shutdown.enabled=true 
endpoints.shutdown.sensitive=false

到application.properties

并尝试致电:

 curl -i -X POST devapp583.netcracker.com:26810/shutdown

但要求关闭Auth标头而不是关闭:

{"errorCode":403,"userMessage":"No 'Authorization' header","stacktrace":null,"remoteMessage":null}

1 个答案:

答案 0 :(得分:0)

这似乎是一个错误,看看here。 (如果您使用@EnableResourceServer

  

根据健康访问限制1.3的文档,a   非敏感健康端点应允许匿名访问。然而,   如果找到@EnableResourceServer批注,这将停止工作。   启用OAuth2资源服务器时,甚至是非敏感的   端点需要完全身份验证。

此外,您还可以找到解决方法:

  

我确实设法解决了健康端点的问题   添加以下bean定义。

@Bean
ResourceServerConfigurer resourceServerConfigurer() {
    new ResourceServerConfigurerAdapter() {
        @Override
        void configure(ResourceServerSecurityConfigurer resources)
                throws Exception {
            resources.resourceId('blah')
        }

        @Override
        void configure(HttpSecurity http) throws Exception {
            http.authorizeRequests()
            // allow anonymous access to health check endpoint
                    .antMatchers("/manage/health").permitAll()
            // everything else requires authentication
                    .anyRequest().authenticated()
        }
    }
}

但是我自己没有尝试过