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

如何在Spring Boot中将自定义AbstractHealthIndicator设置为不敏感,以便显示for/healthendpoint?

鲜于华容
2023-03-14
{
    "status": "UP",
    "testing": {
        "status": "UNKNOWN",
        "foo": "bar"
    }
}
import org.springframework.boot.actuate.health.AbstractHealthIndicator;
import org.springframework.boot.actuate.health.Health.Builder;
import org.springframework.stereotype.Component;

@Component
public class TestingHealthIndicator extends AbstractHealthIndicator {

    @Override
    protected void doHealthCheck(Builder builder) throws Exception {
        builder.withDetail("foo", "bar");
    }
}
management.security.enabled=false
management.health.defaults.enabled=false

我在这里看到了一些有用的信息:https://docs.spring.io/spring-boot/docs/current/reference/html/production-ready-endpoints.html,但没有看到将自定义abstracthealthindicator设置为非敏感的特定方式。

共有1个答案

李言
2023-03-14

假设您只希望禁用healthcheck的安全性。对于其余的API,您希望按照常规进行身份验证。所以,健康需要显示所有的信息。我曾经在SpringBoot4.4中有过相同的项目。这是我在application.yml中配置

endpoints:
  health: 
    sensitive:  false 

management:
  security:
    enabled: false
  health:
    defaults:
      enabled: true

在安全性中,将其他API进行完全身份验证。

<intercept-url pattern="/health access="permitAll" />
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" />

希望这能帮上忙。

 类似资料:
  • 问题内容: 我想将自定义图像设置为UIBarButtonItem,但它仅在周围显示一个矩形框,并且不显示实际图像。 我的应用程序屏幕截图 上面的方法是工具栏配置,但是我不知道这是什么错误。 问题答案: 那是因为UIBarButtonItem图像的默认呈现模式始终将图像绘制为模板图像,而忽略其颜色信息(UIImageRenderingModeAlwaysTemplate)。只需使用UIImage的方

  • 我有一个rest应用程序,它使用带有tomcat嵌入的spring boot 1.4.2 在客户端,用户可以通过网络摄像头拍照并保存到服务器。 在服务器端,我保存img的例子: /home/test/img/ 在我的Web应用程序中,我需要设置什么才能显示图像?

  • 我刚接触Kafka,我不知道如何使用“transforms.router.type”使其与我的Debezium设置一起工作。因此,我对java类进行了特殊的事件转换,并预先进行了配置,以便将其部署到容器中,如下所示: curl-X POST-H“Accept:application/json”-H“Content Type:application/json”localhost:8083/conne

  • 我有一个自定义ProgressBar: 然而,它没有工作--后台任务正在执行,但ProgressBar没有显示。如何使用AsyncTask在活动顶部显示ProgressBar?

  • 主要内容:1.引入包,2.配置加密、解密的密码,3.测试用例中生成加密后的秘钥,4.将加密后的字符串替换原明文,5.部署时配置 salt(盐)值MySQL 登录密码,Redis 登录密码以及第三方的密钥等等一览无余。这里介绍一个加解密组件,提高一些属性配置的安全性。 1.引入包 2.配置加密、解密的密码 3.测试用例中生成加密后的秘钥 4.将加密后的字符串替换原明文 5.部署时配置 salt(盐)值 为了防止 salt(盐)泄露被反解出密码,可以在项目部署的时候使用命令传入 salt 值:

  • 主要内容:1.引入包,2.配置加密、解密的密码,3.测试用例中生成加密后的秘钥,4.将加密后的字符串替换原明文,5.部署时配置 salt(盐)值MySQL 登录密码,Redis 登录密码以及第三方的密钥等等一览无余。这里介绍一个加解密组件,提高一些属性配置的安全性。 1.引入包 2.配置加密、解密的密码 3.测试用例中生成加密后的秘钥 4.将加密后的字符串替换原明文 5.部署时配置 salt(盐)值 为了防止 salt(盐)泄露被反解出密码,可以在项目部署的时候使用命令传入 salt 值: