使用JWT安全性启用Spring Boot 2.0执行器端点

时间:2018-04-02 12:02:58

标签: java spring-boot spring-security jwt spring-boot-actuator

首先,我是Spring Boot Framework的新手。我已经在致动器上工作了几天,并且能够设置端点来监控系统。然而,当我将JWT整合到安全性时,我的所有执行器端点都破了。

如何在弹簧启动安全性之上禁用执行器端点的JWT安全性? 以下是我的application.yml文件属性。

management:
  endpoint:
    metrics:
      enabled: true
  endpoints:
    web:
      exposure:
        include: health, metrics

2 个答案:

答案 0 :(得分:3)

如果您确实依赖于Spring Security,则必须专门为/actuator端点配置(禁用)它。

您必须按照WebSecurityConfigurerAdapter中的说明扩展official documentation,并允许对所需端点的所有访问权限。查看Spring Boot 2安全示例Disabling actuator security but not user-defined endpoints

这是如何禁用执行器端点的安全性的:

@Configuration
public class ActuatorSecurity extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.requestMatcher(EndpointRequest.toAnyEndpoint()).authorizeRequests()
            .anyRequest().permitAll()
    }

}

custom security example也很有用。

答案 1 :(得分:0)

补充hovanessyan答案,如果您在配置中使用@EnableResourceServer,您还需要将@Order(-1)注释添加到“ActuatorSecurity”类中。

在此处查看更多内容:https://stackoverflow.com/a/50048440/9697259