HashiCorp Vault尽管通过UI启用了秘密引擎,但仍没有用于路由错误的处理程序

时间:2020-07-24 06:24:10

标签: security hashicorp-vault

我使用非dev Vault服务器继续进行操作,并在用户界面的kv版本1中使用了“启用新引擎”,并创建了一个秘密。

作为测试,我正在使用具有root权限的令牌来尝试以下操作并收到no route错误:

curl -H“ X-Vault-Token:” -X GET Quirks mode

{“错误”:[“路由'secret / kvtest / anothertest / test'没有处理程序”]}

我的理解是,当我通过用户界面启用机密引擎时,应该不会出现没有处理程序的问题。我是否缺少步骤,政策,或者这是API路径问题?

我的参考文献之一是https://vaultwebsite.com/v1/secret/kvtest1/test12/test123,这使我需要审核启用的金额。

1 个答案:

答案 0 :(得分:3)

我的猜测是您已经启用了KV引擎并为其编写了一个秘密,但是路径secret/是错误的。

例如,如果我启用了一个引擎,然后尝试读取现有值,那么它将起作用

$ vault secrets enable -version=1 -path kv kv
Success! Enabled the kv secrets engine at: kv/
$ curl --header "X-Vault-Token: $VAULT_TOKEN" $VAULT_ADDR/v1/kv/foo
{"request_id":"2db249af-10de-01c5-4603-8f89a46897b5","lease_id":"","renewable":false,"lease_duration":2764800,"data":{"v6":"1"},"wrap_info":null,"warnings":null,"auth":null}

但是,如果我现在尝试从不存在的路径读取数据,例如,我会得到与您相同的错误

$ curl --header "X-Vault-Token: $VAULT_TOKEN" $VAULT_ADDR/v1/foobar/foo
{"errors":["no handler for route 'foobar/foo'"]}

如果您列出现有的安装并验证路径,将会很有帮助

$ curl --header "X-Vault-Token: $VAULT_TOKEN" $VAULT_ADDR/v1/sys/mounts
# or
$ vault secrets list