我知道我们可以选择查看给定令牌的特定路径具有哪些功能
示例 - 使用命令 -vault token capabilities secret/foo
但是有没有一种方法可以确定我可以通过读取、写入或更新等功能访问给定令牌的所有路径。
我尝试通过保管库令牌查找来查找附加到我的令牌的策略。但我无法阅读该策略来查看我可以访问哪些路径。
vault token create -policy=read-policy -no-default-policy
Key Value
--- -----
token XXXXXXXXXXXXXXXXXXXXXXXX
token_accessor R3uPmiu30Hw8HgSbFcS3wkDJ
token_duration 768h
token_renewable true
token_policies ["read-policy"] ++++++++++++++++++++++++++++++++++++++++
identity_policies []
policies ["read-policy"]
Run Code Online (Sandbox Code Playgroud)
使用令牌登录后,如果我尝试阅读该政策
vault policy read read-policy
Error reading policy named read-policy: Error making API request.
URL: GET http://127.0.0.1:8200/v1/sys/policies/acl/read-policy
Code: 403. Errors:
* 1 error occurred:
* permission denied
Run Code Online (Sandbox Code Playgroud)
那么,我们是否必须在创建读取策略 hcl 文件时包含 sys/policies/acl/read-policy 的读取功能?(即使我尝试了此操作,但此路径中的功能被拒绝。似乎只有 root 可以读取)或按照保管库设计时,我们看不到我们可以访问哪些路径?除非金库管理员另有说明?或者我们有任何命令来获取该信息?
如我错了请纠正我
进一步深入挖掘金库,我找到了解决方案。我们必须运行以下命令,这将告诉我们我们拥有哪些路径以及哪些功能
保管库读取 sys/internal/ui/resultant-acl --format=json|jq -r .data
{
"exact_paths": {
"auth/token/lookup-self": {
"capabilities": [
"read"
]
},
"sys/internal/ui/resultant-acl": {
"capabilities": [
"read"
]
},
"sys/mounts": {
"capabilities": [
"list"
]
}
},
"glob_paths": {
"sys/mounts/": {
"capabilities": [
"create",
"delete",
"list",
"read",
"sudo",
"update"
]
}
},
"root": false
}
Run Code Online (Sandbox Code Playgroud)
因此,如果我们希望令牌用户知道他们拥有什么路径/功能,那么当我们创建策略时,我们必须包含对 path 的读取功能 sys/internal/ui/resultant-acl。示例我创建了此策略仅用于管理秘密引擎,并且我已包含该功能,以便将使用映射到该策略的令牌的用户可以读取他或她拥有的路径/功能
猫 /tmp/secrets-mgmt.hcl
path "sys/mounts/*" {
capabilities = ["create","read","update","delete","list","sudo"]
}
path "sys/mounts" {
capabilities = ["list"]
}
# Allow tokens to look up their own properties
path "auth/token/lookup-self" {
capabilities = ["read"]
}
# based on how the internal ACL features and capabilities change.
path "sys/internal/ui/resultant-acl" {
capabilities = ["read"]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2291 次 |
| 最近记录: |