springboot actuator 配置密码
时间: 2023-10-20 18:09:07 浏览: 432
Spring Boot Actuator 提供了一些端点,可以让你监控和管理 Spring Boot 应用程序。其中包括一些敏感信息,例如应用程序的健康状况、配置信息、日志等等。为了保护这些敏感信息,你可以配置 Actuator 端点的访问密码。
以下是配置 Actuator 端点访问密码的步骤:
1. 在 application.properties 或 application.yml 文件中添加以下配置:
```
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always
management.endpoint.info.enabled=true
management.endpoint.logfile.enabled=true
spring.security.user.name=admin
spring.security.user.password=your_password
```
上述配置中,`management.endpoints.web.exposure.include=*` 表示暴露所有 Actuator 端点,`management.endpoint.health.show-details=always` 表示展示详细的健康状况信息,`management.endpoint.info.enabled=true` 表示开启 info 端点,`management.endpoint.logfile.enabled=true` 表示开启 logfile 端点。
2. 在需要保护的端点上添加 `@Secured` 注解,如:
```java
@RestController
public class MyController {
@GetMapping("/my-endpoint")
@Secured("ROLE_ACTUATOR")
public String myEndpoint() {
// ...
}
}
```
这里的 `@Secured("ROLE_ACTUATOR")` 表示只有具有 `ROLE_ACTUATOR` 权限的用户才能访问该端点。
3. 启动应用程序,并使用 `http://username:password@localhost:port/actuator/` 访问 Actuator 端点。其中,`username` 和 `password` 分别是你在第一步中配置的用户名和密码,`port` 是应用程序的端口号。
这样,你就可以保护 Actuator 端点的访问了。注意,在生产环境中,应该使用更加安全的身份验证方式,例如 OAuth2 或 JWT。
阅读全文