hashicorp-vault - 保险柜策略是分层的吗?
问题描述
在授权访问路径时,我是否必须启用对所有父文件夹的读取访问权限?我在文档中找不到这样的声明,但一些测试证实了这一点。考虑一下:
path "secret/myapp/*" {
capabilities = ["create", "read", "sudo", "update", "list", "delete"]
}
分配了正确的角色后,我无法阅读secret/myapp/test
。我至少需要将此添加到角色中:
path "secret/*" {
capabilities = ["read"]
}
这似乎与说最具体规则匹配的文档相矛盾。
解决方案
好吧,我没疯。事实证明,KV 后端要求您更改此处描述的路径:https ://www.vaultproject.io/docs/secrets/kv/kv-v2.html
我能够通过将政策更改为:
path "secret/data/myapp/*" {
capabilities = ["create", "read", "sudo", "update", "list", "delete"]
}
只是偷偷摸摸一个/data
之前myapp
。更重要的是,我尝试的“修复”(允许访问父路径)完全是偶然的:这样我就可以访问secret/data
which 就绰绰有余了。
推荐阅读
- c - 无法正确地将 uint64_t 转换为双精度。我错过了什么?
- angular - 如何绕过 auth0 登录进行 Angular 测试?
- scala - 将模拟对象注入伴随对象字段
- reactjs - 为什么需要 npm serve 或 express 服务器来将 create-react-app 生产构建部署到 heroku 云服务器?
- r - ggplot2 - 如何将比例标签添加到堆叠比例条形图?
- python - 检查熊猫数据框列中的值是否为整数,如果不是则将其写入列表
- php - 如何正确地将我的 PHP 文件链接到我的 CSS
- python - 如何确定字节是 utf-8 还是 utf-16
- python - 替换或交换 3 个列表以创建单个列表/数组
- r - 如何在我的热图上分配 9 列特定颜色的独立渐变?