本文将介绍Spring Boot Actuator的所有端点。首先从Maven依赖项开始,然后解释如何通过配置文件控制端点。第一次,了解如何确保端点的安全性。
其中,Spring Boot 1.X和Spring Boot 2.X在执行器的端点配置方面将有一定的差异。当存在差异时,将提示提示。
要使用Spring Boot执行器,您需要在项目中介绍相应的依赖性:
从Spring Boot 2.X开始,如果您想通过HTTP访问它,则需要介绍Web启动器:
从Spring Boot 2.X开始,我们需要手动启用并公开端点。默认,除/关机以外的所有端点都可以使用,并且仅/健康和/信息端点都暴露于外部。应用程序,所有端点都可以通过/执行器找到。
这意味着,一旦我们将适当的起动器介绍给Maven配置,我们就可以使用http:// localhost:8080/cartuator/health and http:// localhost:8080/cartuator/info访问两个端点访问
请访问http:// localhost:8080/执行器,可用端点列表如下:
以下是通过配置暴露的,以暴露除/关机以外的所有端点,并且在应用程序中执行以下配置。
重新启动,再次访问/执行器,您可以看到除/关机以外的所有端点。
一些端点可能会暴露敏感数据,因此我们需要知道如何将端点暴露在细粒子中。
Management.Endpoints.web.expuse.include可以通过逗号分隔符配置多个端点,例如我们的曝光/bean和/记录器端点:
除了包含特定端点外,我们还可以排除一些端点。
包括和排除属性支持端点列表。排除属性的优先级高于包含。
让我们看一下如何以细粒径打开指定的端点。首先,您需要关闭默认情况下打开的所有端点:
开放和公开/健康终点:
通过上述配置,您可以访问/健康终点。
因为/关闭更敏感,所以端点默认情况下不可用。它可以在application.properties文件中启动。执行以下配置:
目前,访问/执行器端点,您可以在列表中看到它。/shutdownEndpoint仅接收邮政请求,您可以通过以下方式优雅地关闭服务:
在实际应用程序中,我们通常需要保护应用程序安全性。基于此,我们需要确保终点的安全性。
首先,在应用程序中添加安全性的依赖项:
为了获得最基本的安全保证,这是我们需要做的。添加安全起动器依赖项后,该程序将自动将身份验证应用于/INFO和/HEALTH以外的所有开放点。
下面,自定义安全限制 /执行器端点作为管理员角色。
首先排除默认安全配置:
请注意ManagementWebsecurityAutoconFiguration.Class类,该类将允许安全配置适用于 /执行器。
在我们的配置类中,配置多个用户和字符,同时有一个可以使用的管理员字符:
Springboot为我们提供了一个方便的请求匹配,用于执行器端点。将其锁定为admin字符:执行器:
通过本文,我们已经了解了Spring Boot如何默认情况下配置执行器。要求,我们定义了应用程序中端点的开口,禁用和暴露。propertiesfile.in spring boot的/selldwon端点的视图,我们有学会了如何单独启用端点。在最后,我学会了如何基于基于安全的端点保护端点。
源代码地址:https://github.com/eugenp/tutorials/tree/master/spring-boot-modules/spring-boot-amuator。
博客作者简介:“ Springboot Technology Inner Book”技术书籍作者,喜欢学习技术,撰写技术干货文章。
公共帐户:博客作者的公共帐户“计划的新愿景”,欢迎关注?
技术交流:请联系博客微信:Zhuan2quan