HealthMvcEndpoint 中两个版本的 Spring Boot Actuator(1.2.5 和 1.3.0)的实现存在差异,isUnrestricted() 方法( && 和 || )。我明白这是为了保留这些限制
但是现在有什么解决方案可以只启用一个端点(例如健康)不受限制的全部内容,而不暴露所有其他端点?禁用 management.security.enabled 只是使所有端点都可以在没有身份验证的情况下访问(?) - 看起来它并没有对端点敏感。
HealthMvcEndpoint 中两个版本的 Spring Boot Actuator(1.2.5 和 1.3.0)的实现存在差异,isUnrestricted() 方法( && 和 || )。我明白这是为了保留这些限制
但是现在有什么解决方案可以只启用一个端点(例如健康)不受限制的全部内容,而不暴露所有其他端点?禁用 management.security.enabled 只是使所有端点都可以在没有身份验证的情况下访问(?) - 看起来它并没有对端点敏感。
我设法通过禁用所有端点首先endpoints.enabled = false
禁用它们的安全性management.security.enabled = false
并启用我想要的没有安全性的端点来部分解决这个问题 - 例如 Health 端点
endpoints.health.enabled = true
和endpoints.health.sensitive = false
.
对于执行器 2,这些属性已更改
要禁用所有执行器端点,请使用
management.endpoints.enabled-by-default=false
启用特定端点使用management.endpoint.<id>.enabled
属性。以下示例启用关闭端点:
management.endpoint.shutdown.enabled=true
官方文档
https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-features.html