-
Hi, I have the following security critical use case:
But this scenario is almost not possible because we have configurer which require root token to configure roles, policies, etc on tenant vaults. If we remove root token, it complains and can't access vault. So, the idea is to configure tenant vaults externally either by configurer deployed remotely (if it's possible) or via custom external scripts. Does it make sense? Or it's overengineering without real security benefits? |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 3 replies
-
Hi @johnny990, thank you for using Bank-Vaults! Do I understand correctly that the problem here is that the configurer stores the root and unseal tokens in a Kubernetes secret? As per the docs this option is only for development purposes, these tokens should be stored in a more secure environment indeed. In |
Beta Was this translation helpful? Give feedback.
-
Hey @johnny990, Technically it should be possible to deploy the Vault Configurer in a different Kubernetes cluster than the tenant Vaults. Since the Configurer communicates with the Vault API to configure policies and roles, it does not have to reside in the same Kubernetes cluster as the Vault it is configuring. You can configure it to connect to the tenant Vaults remotely via their API endpoint, but this is something that will most probably require additional resources to be created. The idea makes sense from a security perspective, as it would reduce the exposure of sensitive tokens (such as the root token) in the tenant clusters. Some key points to keep in mind while implementing this:
|
Beta Was this translation helpful? Give feedback.
Well the configurer is actually a separate project, it's the Bank-Vaults CLI tool: https://github.com/bank-vaults/bank-vaults
Since the tool already handles a lot of tedious tasks, the operator was developed on top of its features. You can read about those here: https://bank-vaults.dev/docs/operator/
The use-case you are talking about makes a lot of sense and the Vault-Operator has a lot of built-in components to support that, but supporting a multi-cluster setup is not supported out of the box, and It would definitely be a huge load of work, to have that.
I believe that no CRD in the K8s landscape come with a suitable configuration out of the box. When someone starts to adopt a solution …