You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Spring Vault Repository以适配Vault KV存储V2版本

适配Spring Vault Repository到KV存储V2版本

你碰到的这个问题是因为Spring Cloud Vault默认会使用KV存储的V1版本,而你的环境实际用的是V2版本,只需要在配置中显式指定KV的版本,就能让Repository生成正确的请求URL。

修改配置文件

在你的Spring Cloud Vault配置里,给kv节点添加version: 2配置项,指定使用KV V2版本:

spring:
  cloud:
    vault:
      host: vault
      scheme: http
      authentication: TOKEN
      token: xxx-my-token-xxx
      kv:
        backend: secret
        version: 2  # 新增该行,启用KV存储V2版本支持

配置生效后的效果

添加这个配置后,Spring Vault Repository就会按照KV V2的API规范生成请求:

  • 调用credentialsRepository.findById("sullrich")时,请求URL会变为http://vault:8200/v1/secret/data/garmin-connect-credentials/sullrich,匹配V2的读取路径;
  • 调用credentialsRepository.findAll()时,请求URL会变为http://vault:8200/v1/secret/metadata/garmin-connect-credentials?list=true,对应V2的列表查询路径。

额外说明

你的@Secret实体类和CredentialsRepository的定义都是完全正确的,不需要做任何修改,仅通过调整配置就能完成版本适配。

内容的提问来源于stack exchange,提问作者Sebastian Ullrich

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 08:52:28