--
This mailing list is governed under the HashiCorp Community Guidelines - https://www.hashicorp.com/community-guidelines.html. Behavior in violation of those guidelines may result in your removal from this mailing list.
GitHub Issues: https://github.com/hashicorp/vault/issues
IRC: #vault-tool on Freenode
---
You received this message because you are subscribed to the Google Groups "Vault" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vault-tool+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vault-tool/89f774c2-6f7e-461a-ac97-e661174028e5%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I figured that it didn't exist, but thought I would ask.
We may consider writing a back end, but we are still in the evaluation phase of Vault as well, so it wouldn't be until we were definitely in the adopt phase.
If we were to start writing one, can we ask DEV support questions on this group, or is there another avenue for that? I am figuring we would have a few questions.
Thanks,
Andrew
--
This mailing list is governed under the HashiCorp Community Guidelines - https://www.hashicorp.com/community-guidelines.html. Behavior in violation of those guidelines may result in your removal from this mailing list.
GitHub Issues: https://github.com/hashicorp/vault/issues
IRC: #vault-tool on Freenode
---
You received this message because you are subscribed to a topic in the Google Groups "Vault" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vault-tool/tf7E7jEmvtM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vault-tool+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vault-tool/CAORe8GGOrenQgnNc7o4CCUvL-y-K3mZxp5wQ64PB9f07agyfYw%40mail.gmail.com.
My understanding of transit is that it encrypts/decrypts. Will it give me an actual key, or are you saying once I have a key, use it to encrypt? If I already have a key, I can just store it in the generic back end for encrypted storage.
We would have multiple keys, so my desire would be able to programmatically request a portion of the key pair. Vault could detect if the key pair does or does not exist, if not, create it and return it.
This isn't just for convenience, it is primarily about security. We most likely will need a man in the middle generating these keys to store in Vault. That would most likely mean at some point or another the key will end up on a hard drive somewhere. If Vault generates it, it will only ever be in memory or encrypted on disk.
Ultimately, we won't be able to control publishers who cache and publish messages after a "revocation", but our consumers will no longer be able to decrypt the messages if the key is removed or replaced.
I kind of view this as similar to the on demand password or SSH generation Vault already has, except it is creating and delivering an actual portion of a key pair.
--
This mailing list is governed under the HashiCorp Community Guidelines - https://www.hashicorp.com/community-guidelines.html. Behavior in violation of those guidelines may result in your removal from this mailing list.
GitHub Issues: https://github.com/hashicorp/vault/issues
IRC: #vault-tool on Freenode
---
You received this message because you are subscribed to a topic in the Google Groups "Vault" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/vault-tool/tf7E7jEmvtM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to vault-tool+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/vault-tool/CAORe8GGKEQqU1_GQxi5Do0BmcKgnFQE3WG2eVchRQAx7%2Bp%3DRwg%40mail.gmail.com.
You're talking about giving actual keys out to applications...I don't
think you can really assume that an outside process generating keys
and putting them into Vault will persist the keys to disk (there's
certainly no requirement since it could generate them and send them
into Vault all in memory)...and at the same time, I don't think you
can *not* assume that any given user will simply store the value. In
fact, given the number of users of the keys vs a generator, you're
probably much more likely to have it persisted by a user than the
generator, because the generator would presumably be the only
application allowed to write a key in (using the 'create' capability).
It's far easier to make sure one service is locked down than X
services.
The one exception is transit's data key support which basically works
the way that you describe -- it can create a data key which can then
be used offline for applications that cannot handle. It's wrapped via
a transit key so you can distribute the key with your applications and
have appropriate applications decrypt it and hold the value in memory.
This is basically just a convenience function for a standardized way
of getting a series of random bytes suitable for AES encryption and
having it encrypted by a transit key -- but the transit key is never
revealed. The same model could work for RSA keys, although you'd have
to do the generation -- but doing that fully in-memory is pretty
trivial in most languages.
I'd encourage you to look at the transit backend docs
(https://www.vaultproject.io/docs/secrets/transit/index.html) and
think about the capabilities it offers -- rotation, minimum key
version decryption, etc. I think your use case is very similar to
using datakeys and you can already get the things you want via transit
and potentially a generic mount.