当前位置: 首页 > 知识库问答 >
问题:

Spring引导执行器-无法禁用/INFOendpoint

陆仲渊
2023-03-14

我尝试在application.yml配置文件中禁用生产环境的所有执行器endpoint:

endpoints.enabled: false

它适用于除/info以外的所有endpoint。如何关闭给定环境的所有endpoint?

更新:

我正在做的项目也是Eureka的客户。在Spring Cloud Netflix的文档Status Page and Health Indicator一节(http://Cloud.Spring.io/spring-cloud-netflix/spring-cloud-netflix.html)中,它说“Eureka实例分别默认为”/info“和”/Health“”。

有没有什么解决方案可以禁用那些endpoint?

我能够用endpoint禁用/healthendpoint。Enabled:false,但不能禁用/infoendpoint。

共有1个答案

华英睿
2023-03-14

您的示例配置在我看来很可疑。我猜你的意思是

endpoints:
  enabled: true

无论如何,我只是尝试将此添加到一个vanilla Spring Boot应用程序中(使用1.3.1,并且所有endpoint都被禁用(正如预期的那样)。

 类似资料:
  • 我在我的应用程序中使用了Spring-Boot1.3.1和Spring-Boot-Actutor。我使用作为中的父级。 为了禁用安全性,我在中添加了2个条目。 它仍然没有禁用基本的安全性。当我在本地Tomcat中启动应用程序时,我看到日志文件中的默认密码。

  • 我第一次使用Spring Boot应用程序时,执行器是不安全的,所以很容易通过/acture/shutdownendpoint远程关闭。最近,我已经使用Spring安全保护了我的执行器,它已经起作用了。现在我需要提供http基本凭据来访问endpoint,但现在对/acture/shutdownendpoint的curl调用失败,出现禁止错误。我一定是配置不正确的地方。 我的卷曲命令: 我的配置:

  • 我正在为我的Spring Boot应用程序实现自定义执行器HealthIndicators。 它们看起来像: 这里我的问题是,默认情况下,Acturet有大约5分钟的调度时间,在该时间内它将自动调用endpoint。我要禁用这个。 我只希望在代码中显式调用健康endpoint时调用它。 有人知道如何禁用执行器默认调度吗?

  • 嗨,我正在使用sprinb-boot2中的致动器,具有以下属性 我的目标是禁用除健康之外的所有endpoint。通过此配置,我禁用了除health以外的所有endpoint,现在获取以下endpoint。是否可以同时禁用?怎么做的?

  • Spring Boot执行器的两个版本(1.2.5和1.3.0)在HealthMvcEndpoint,isUnrestricted()方法(&&and)中的实现存在差异。我明白这是为了保留这些限制 http://docs.spring.io/spring-boot/docs/current-snapshot/reference/htmlsingle/#production-ready-health