场景,因为Config Service开了权限校验,注册到eureka之后,SpringAdmin查看信息会报错401,如果想在SpringAdmin中正确的看到Config Service的actuator信息则需要将账号密码告知给SpringAdmin,磁力用的是Eureka作为发现服务,同时支持设置metaData,如下
spring.security.user.name=user
spring.security.user.password=123456
eureka.instance.metadata-map.user.name=${spring.security.user.name}
eureka.instance.metadata-map.user.password=${spring.security.user.password}
SpringAdmin会从metaData中自动获取,并在访问对应client的时候加上,其他的发现服务也有类似的实现,在官方文档此处有描述
discovery-first-bootstrap
具体原理还没有深究,等有时间了再来看,为什么这样可以,configService,通过eureka的形式也注册到微服务中,微服务通过discovery,服务发现的形式找到configService,开启这个能力需要在获取configService的微服务配置文件中开启
spring.cloud.config.discovery.enabled=true
spring.cloud.config.discovery.serviceId=fx-config-service
---------------2024年5月31日------------
找到原因了,spring admin的文档 有对应的描述信息
key还有很多,spring admin 实现了eureka的meta data 转换,eureka 中实例的meta data优先级高于服务器配置