【问题标题】:Reading vault secrets from consul-template从领事模板读取保险库机密
【发布时间】:2016-06-23 10:50:40
【问题描述】:

如何从 consul 模板中查询密钥的值?从 Vault cli 我会做

vault read -field=value secret/somekey

而且效果很好。但是,在领事模板中

{{secret "secret/somekey"}} 

返回类似

的东西
{ 2592000 false map[value:11122222001040]

我可以看到它正在输出lease_duration 等以及值。我如何获得 consul-template 中的值?

【问题讨论】:

  • 有答案。如果正确,请标记。

标签: consul hashicorp-vault consul-template


【解决方案1】:

在您的模板中,您需要使用:

{{with secret "secret/somekey"}}{{.Data.value}}{{end}}

在您的配置文件中,您还需要一个保管库部分:

vault {
  address = "https://vault.service.consul:8200"
  token = "abcd1234"
}

或者您可以使用VAULT_TOKEN 环境变量。

【讨论】:

  • 你将如何迭代多个值而不仅仅是 1?
  • key 在保险库保险库中更新时,我有一个如下模板来更新令牌并更新 tls.key { renew_token = true address = "vault.xxx.com" } template { destination = "/tmp/tls.key" contents = "{{ with secret \"secret/user\" }}{{ .Data.key }}{{ end }}" } with consul-template 在 ec2 实例中运行,但是当保险库key 更新时,tls.key 没有获得新的值,而是当我重新加载咨询模板时它确实更新了 - 但是是否可以在不重新启动服务的情况下更新它?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-01-02
  • 2020-05-10
  • 2023-02-10
  • 1970-01-01
  • 2018-04-28
  • 2019-07-05
  • 1970-01-01
相关资源
最近更新 更多