SpringBoot2.x中management.security.enabled=false无效的解决

问题描述:

在使用 Spring Boot 2.x 项目时,当添加了 Actuator 组件后,如果需要关闭 Actuator 组件的安全认证功能,通过在配置文件中加入 management.security.enabled=false 进行了配置,但是访问 Actuator 的端点时,仍然需要输入用户名和密码进行认证。

解决方法:

Spring Boot 2.x 中,Actuator 都需要通过 management.* 前缀的配置来进行管理。因此,关闭 management.security.enabled 配置,需要同时关闭 Actuator 所有的安全认证配置,包括基于用户验证的或者基于 IP 白名单验证的。其实,关闭 management.security.enabled 配置对应的是关闭 Actuator 的所有安全认证配置。

1、关闭 Actuator 的所有安全认证配置

management:
  endpoints:
    web:
      exposure:
        include: '*'
  endpoint:
    health:
      show-details: always
  security:
    enabled: false

以上配置意义如下:

  • endpoints.web.exposure.include: '*'表示所有端点都暴露出去,可以直接访问。
  • endpoint.health.show-details: always表示展示详细的健康检查信息。
  • security.enabled: false表示关闭所有的安全认证配置。

这里需要注意的是,如果只是关闭了 management.security.enabled 并不会生效,需要将上述全部配置一并关闭。

2、示例代码

下面是一个示例代码,演示了如何在 Spring Boot 2.x 中关闭 Actuator 的所有安全认证配置。在示例代码中,我们创建了一个 /actuator 路径下的健康检查端点,并通过 management.security.enabled=false 配置来关闭安全认证配置。

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class DemoApplication {

    @GetMapping("/hello")
    public String hello() {
        return "hello world!";
    }

    @GetMapping("/actuator/health")
    public String health() {
        return "OK";
    }

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

application.yml 配置:

management:
  security:
    enabled: false

在上述示例代码中,我们创建了两个端点,一个是 /hello,其它人可以直接访问,一个是 /actuator/health,需要在访问前进行身份验证。通过在配置文件中加入 management.security.enabled=false 配置,可以关闭 /actuator/health 点的安全认证配置,以便其他人也可以访问了。

通过上述两条示例,我们可以很好地了解如何在 Spring Boot 2.x 中关闭 Actuator 的所有安全认证配置。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:SpringBoot2.x中management.security.enabled=false无效的解决 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Junit启动测试mybatis xml文件BindingException: Invalid bound statement问题

    背景:1、正常启动,xml文件放在java目录和resource目录下均正常    2、junit启动,xml文件放在resource目录下正常,放在java目录下报BindingException错误 mapperlocation绑定地址为:”classpath:com/a/b/**/*.xml”   原因就在于绑定的地址有问题。   junit生成的te…

    Java 2023年4月22日
    00
  • java 将方法作为传参–多态的实例

    当我们在Java中定义一个方法时,有时需要将另一个方法作为参数进行传递。这种将方法作为另一个方法的参数的机制被称为方法参数化或方法传递。 这种技术是Java多态的实例之一,多态允许我们以不同的方式来处理不同类型的对象。将方法参数化允许我们根据需要传递不同的行为。 下面是完整的攻略,分为以下几个步骤: 1.定义一个接口 我们首先需要定义一个接口,它将定义我们需…

    Java 2023年5月26日
    00
  • java程序运行时内存分配详解

    Java程序运行时内存分配详解 Java程序运行时内存分配是Java程序员必须理解和掌握的重要知识点之一。了解内存分配可以帮助我们更好的管理内存,提高程序性能,避免程序崩溃等问题的出现。 Java内存分区 在Java中,内存分配主要分为以下几个区域: 程序计数器(Program Counter Register) 虚拟机栈(Java Virtual Mach…

    Java 2023年5月23日
    00
  • maven中配置项目的jdk版本无效的排查方式

    请听我讲解maven中配置项目的jdk版本无效的排查方式的完整攻略。 1. 确认maven中配置jdk版本是否正确 在pom.xml文件中配置项目使用的jdk版本,如果这个配置是正确的,那么可以使用maven命令查看项目依赖的jdk版本: mvn help:effective-pom 执行该命令后,会在终端输出effective-pom的结果,其中即可看到j…

    Java 2023年5月20日
    00
  • Json字符串与Object、List、Map的互转工具类

    介绍:在Java中,经常会使用Json格式的字符串来传输数据,但是在Java程序内部我们又需要把Json字符串转换为Java对象来方便的操作数据。本文将介绍如何使用Json相关的工具类将Json字符串转换为Java对象,并将Java对象转换为Json格式的字符串。 将Json字符串转换为Java对象 当我们有一个Json格式的字符串需要转换为Java对象时,…

    Java 2023年5月26日
    00
  • 详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)

    下面是“详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)”的完整攻略,并列举两条示例。 SSH框架整合方法详解 准备工作 首先,你需要准备好以下环境和工具: JDK 1.8+,建议使用最新的版本; Eclipse、IntelliJ IDEA等Java IDE; Maven3+,用于项目的构建; Tomcat9+,用于…

    Java 2023年5月19日
    00
  • Spring Boot启动过程(六)之内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的启动教程详解

    Spring Boot是一个基于Spring框架的开源框架,用于快速构建适用于各种应用场景的独立、生产级别的Spring应用程序。在Spring Boot中,内嵌Tomcat作为默认的Servlet容器,为我们提供了灵活的配置和部署方式,本文将详细讲解内嵌Tomcat中StandardHost、StandardContext和StandardWrapper的…

    Java 2023年5月19日
    00
  • 一文详解RocketMQ-Spring的源码解析与实战

    摘要:这篇文章主要介绍 Spring Boot 项目使用 rocketmq-spring SDK 实现消息收发的操作流程,同时笔者会从开发者的角度解读 SDK 的设计逻辑。 本文分享自华为云社区《RocketMQ-Spring : 实战与源码解析一网打尽》,作者:勇哥java实战分享。 RocketMQ 是大家耳熟能详的消息队列,开源项目 rocketmq-…

    Java 2023年4月25日
    00
合作推广
合作推广
分享本页
返回顶部