我有一个使用Vault后端的Spring Boot项目配置服务器。 application.yml:
spring:
profiles:
active: vault
config:
server:
vault:
kvVersion: 2
order: 1
如果我从这个配置开始,所有请求都必须包含 X-Config-Token。 配置服务器部署在 Kubernetes 上,vault sidecar 代理连接到 pod。 关于文档:https://docs.spring.io/spring-cloud-config/docs/current/reference/html/#vault-backend
显示如何更改身份验证类型,但不支持: https://cloud.spring.io/spring-cloud-vault/reference/html/#vault.config.authentication.vault-agent
spring.cloud.vault:
authentication: NONE
将所有自动身份验证委托给代理。
解决方案是在 application.yml 上使用带有虚拟令牌的复合配置:
spring:
profiles:
active: composite
cloud:
config:
server:
vault:
token: "dummy"
failOnCompositeError: false
composite:
-
type: vault
kvVersion: 2
-
type: git
uri: https://-----