创建第一个用户后,我注意到我可以更改自己的政策:
$ vault write auth/userpass/users/mconigliaro policies=root
Success! Data written to: auth/userpass/users/mconigliaro
更糟糕的是,看起来用户可以互相更改密码:
$ vault write auth/userpass/users/mconigliaro2 password=foobar
Success! Data written to: auth/userpass/users/mconigliaro2
查看policy documentation,我认为我应该能够创建一个类似于此的政策:
path "auth/userpass/users/${user}" {
capabilities = ["update"]
allowed_parameters = {
"password" = []
}
}
但不幸的是,这取决于保险柜似乎没有的政策变量(例如${user}
)的概念。我是否必须为每个使用硬编码路径的用户创建单独的策略,或者是否有一些我更容易丢失的方法?
答案 0 :(得分:2)
您目前使用Vault验证了哪些用户/令牌?我在猜根?所以,是的,你将能够做任何事情。您,当然还有您的用户,通常不会拥有root权限。
以您创建的用户之一登录,并且您发现无法执行您描述的操作。