当我将 Spring Cloud Config Server 与 Hashicorp Vault 后端存储库一起使用时,我无法保密

问题描述 投票:0回答:0

首先,我设置了我的 Spring Cloud Config Server 的 bootstrap.yml 文件,然后在我的 IDEA 中启动它。

  • bootstrap.yml:
spring:
  application:
    name: config-server
  profiles:
    active:
        # this value set can refer to : https://docs.spring.io/spring-cloud-config/docs/2.2.x/reference/html/#vault-backend
      - vault

  cloud:
    config:
      server:
        vault:
          port: "8200"
          host: "127.0.0.1"
          kv-version: 2

server:
  port: 8071

然后,我执行以下命令(此命令拉取Vault的1.13.2版本docker镜像):

 docker run --cap-add=IPC_LOCK  -d -p 8200:8200 --name vault -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' -e 'VAULT_DEV_LISTEN_ADDRESS=0.0.0.0:8200' vault

接下来,我通过访问以下网址在 Vault Web UI 中设置我的秘密属性:

http://localhost:8200/ui/vault/auth

我使用

myroot
登录,并启用版本为2的秘密引擎(kv),
path
licensing-service
.

接下来,我设置

path for this secret
default
secret data
license.vault.property
(键)、
Welcome to Vault
(值)。

保存后,我运行以下命令行:

curl -X "GET" "http://localhost:8071/licensing-service/default" -H "X-Config-Token: myroot"

但是获取不到秘密属性,只能得到如下响应:

{"name":"licensing-service","profiles":["default"],"label":null,"version":null,"state":null,"propertySources":[]}%

谁能说说为什么?正确的反应应该是这样的:

{
  "name":"licensing-service",
  "profiles":["default"],
  "label":null,
  "version":null,
  "state":null,
  "propertySources":[
   {
    "name": "vault:licensing-service",
    "source": {

        "license.vault.property": "Welcome to Vault"

    }
   }
  ]
}

希望有人能告诉我原因,我找不到错误。

hashicorp-vault spring-cloud-config-server
© www.soinside.com 2019 - 2024. All rights reserved.