【问题标题】:Get secret from hashicorp vault using java application with service token使用带有服务令牌的 Java 应用程序从 hashcorp 保险库获取秘密
【发布时间】:2020-07-23 05:59:32
【问题描述】:

也许有些可以帮助我了解我错过了什么。

我使用这样的example 来设置 cloud-config 服务,以及另一个使用 vault 获取秘密的 spring 应用程序。

如果我使用root 令牌,一切正常。

但是一旦我使用策略创建 service 令牌

path "secret/data/test*" {
  capabilities = ["create", "read", "update", "delete", "list"]
}

path "secret/test*" {
  capabilities = ["create", "read", "update", "delete", "list"]
}

我可以用

验证它
$ vault token capabilities secret/test
create, delete, list, read, update

和卷曲

$ curl \
--header "X-Vault-Token: $VAULT_TOKEN" \
http://<dns-name>:8200/v1/secret/data/test | jq .
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   302  100   302    0     0   2796      0 --:--:-- --:--:-- --:--:--  2796
{
  "request_id": "44b5fdcf-a13c-8e12-83f3-a5064f25257d",
  "lease_id": "",
  "renewable": false,
  "lease_duration": 0,
  "data": {
    "data": {
      "test-key": "test-value"
    },
    "metadata": {
      "created_time": "2020-04-09T21:11:28.899688798Z",
      "deletion_time": "",
      "destroyed": false,
      "version": 1
    }
  },
  "wrap_info": null,
  "warnings": null,
  "auth": null
}

但是一旦我开始将此令牌与它返回的应用程序一起使用

2020-04-10 13:38:43.186 DEBUG 43843 --- [nio-8888-exec-1] org.apache.http.wire: http-outgoing-0 >> “GET /v1/secret/data/test HTTP/1.1[\r][\n]”
http-outgoing-0 >> “X-Vault-Token: <TOKEN>[\r][\n]”
Response 403 FORBIDDEN

【问题讨论】:

  • 我对 spring 了解不多,这可能是错误的,但我希望 “X-Vault-Token: &lt;TOKEN&gt;[\r][\n]”“X-Vault-Token: &lt;TOKEN&gt;”
  • 我认为如果你是对的,这也不适用于root 令牌

标签: java spring spring-boot spring-cloud-config hashicorp-vault


【解决方案1】:

听起来应用程序没有正确附加凭据。尝试访问httpbin 之类的网站。 /anything 将返回它收到的请求。这是调试这些服务的一种简单方法。

如果您担心这些凭据,也可以在本地托管该网站。

【讨论】:

  • 谢谢,这一点我会试试的。嗯,我试试这个,但是很奇怪,在网上我没有找到关于这种实现的任何信息,而且很难调试。
  • 我发现一件事,如果我添加空的secret/application/&lt;Environment&gt;,它会开始使用我新创建的策略从保险库中获取数据。
猜你喜欢
  • 2020-06-27
  • 2018-04-28
  • 1970-01-01
  • 2022-08-08
  • 1970-01-01
  • 1970-01-01
  • 2012-04-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多