这是我还没有尝试过的东西,但我已经使用 r限制非 root 令牌的读取访问权限。
您可以创建具有deny如下功能的策略:
$cat auth-policy.hcl
path "secret/*" {
capabilities = ["deny"]
}
vault policy write client-access auth-policy.hcl
Success! Uploaded policy: client-access
以下是为 Vault 策略定义的不同功能- https://www.vaultproject.io/docs/concepts/policies.html#capabilities。
vault token create -policy=client-access -period=768h
Key Value
--- -----
token *********************
token_accessor *********************
token_duration 768h
token_renewable true
token_policies [client-access default]
这将创建一个有效期为 768 小时的令牌,默认为 max。如果您想为新令牌配置更多时间,请在基本 config.hcl 中进行相应max_lease_ttl配置default_lease_ttl
$cat config.hcl
disable_mlock = true
storage "postgresql" {
connection_url = "postgres://vault:vault@postgresql:5432/postgres?sslmode=disable"
}
listener "tcp" {
address = "0.0.0.0:8200"
tls_disable = 1
}
max_lease_ttl = "7200h"
default_lease_ttl = "7200h"
希望这可以帮助!