如何正确获得HashiCorp Vault政策?

时间:2019-02-09 16:29:58

标签: hashicorp-vault

在这种情况下:我创建了一个用户

vault write auth/userpass/users/'username' password='password' policies=default

具有默认策略添加的路径

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

默认政策中。但是,当我尝试访问secret/时,尽管我已在策略文件中添加了权限,但我遇到错误 'You don't have access to secret/,

我做错什么了吗?可以请一些温柔的灵魂帮忙吗?让我知道是否需要其他信息。

2 个答案:

答案 0 :(得分:1)

不确定,但似乎政策结构已更改。为了访问“ secret / db_pass / ”,您应该具有访问secret /本身的权限。因此,我要通过2条政策来实现这一目标。一个可以访问secret /,另一个可以访问secret / db_pass /

path "secret/" {
  capabilities = ["list"]
}

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

答案 1 :(得分:0)

在KV v2中,您需要在第二个策略的data/之后添加secret/

在第一个策略中,您还需要在*之后添加secret/

所以Ashit的解决方案是:

path "secret/*" {
capabilities = ["list"]
}

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