给定Vault中的路径,我如何找到谁可以访问它?



给定一个策略,我可以看到它提供访问的路径。

然而,我想知道相反的情况:给定一个路径,我想知道哪些策略定义了对它的访问,哪些用户/身份/组有这些策略分配给他们?

简而言之,给定一个路径,谁可以用它做什么。

我如何找到与vault命令行客户端或UI?

更好的方法是像下面的例子那样使用HTTP API:

REST_URL="https://VAULT-SERVER/v1"
VAULT_TOKEN="VAULT_TOKEN"
VAULT_PATH="identity"
for p in $(curl --silent --header "X-Vault-Token: $VAULT_TOKEN" --request LIST $REST_URL/sys/policies/acl | jq --raw-output .data.keys[])
do
echo ""
echo "$p"
echo ""
curl --silent --header "X-Vault-Token: $VAULT_TOKEN" --request GET $REST_URL/sys/policies/acl/$p | jq .data.policy | grep --color $VAULT_PATH
done

结果:

管理>

…#管理身份npath "identity/*"{ nCapabilities = ["create", "read", "update", "delete","list","sudo" n} n n…"默认

"…允许一个令牌通过id或查找它自己的实体名字 npath"身份/实体/id/{{identity.entity.id}},{ n能力=["read" n} npath"身份/实体/名称/{{identity.entity.name}},{n能力=["read" n} n n n…">