在 Spring Boot 1.5 中,健康端点无法通过 HTTPS 工作
Posted
技术标签:
【中文标题】在 Spring Boot 1.5 中,健康端点无法通过 HTTPS 工作【英文标题】:Health endpoint not working over HTTPS in Spring Boot 1.5 【发布时间】:2017-08-11 21:01:13 【问题描述】:我最近将我的应用程序中的 Spring Boot 版本从 1.4 更新到 1.5.1,我注意到在 AWS 上部署到 Elastic Beanstalk 后,健康检查开始失败。
在我们的 AWS 环境中,所有通信都是通过 HTTPS 进行的,包括运行状况,它过去可以在 Spring Boot 和 Actuator 1.4 中正常工作,但我们在 1.5 版本中开始在执行器运行状况端点上获得 401。
有人有同样的问题吗?不确定此版本中与此主题相关的更改,但我没有通过阅读发行说明找到任何解决方案。很高兴得到任何帮助。
【问题讨论】:
【参考方案1】:与 https 无关。
由于 1.5.1 健康点默认情况下是安全的,这就是您获得 401 的原因。
在发行说明中:
https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-1.5-Release-Notes
“执行器“敏感”端点现在默认是安全的(即使不依赖于“Spring Security”)。如果您现有的 Spring Boot 1.4 应用程序使用 Spring Security(并且没有任何自定义安全配置)事情应该像以前一样工作。如果您现有的 Spring Boot 1.4 应用程序具有自定义安全配置,并且您希望对敏感端点具有开放访问权限,则需要在安全配置中显式配置它。如果您正在升级Spring Boot 1.4 应用程序不依赖于 Spring Security,并且您希望保留对敏感端点的开放访问,您需要将 management.security.enabled 设置为 false。有关更多详细信息,请参阅更新的参考文档。"
【讨论】:
以上是关于在 Spring Boot 1.5 中,健康端点无法通过 HTTPS 工作的主要内容,如果未能解决你的问题,请参考以下文章