-
Notifications
You must be signed in to change notification settings - Fork 68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
RFE: document building custom Decryptors for external secret management systems #140
Comments
@adamgoossens i would argue that the entire piont of the Also I think its important to note that SOPS itself can interact with tools like Vault for retrieving the PGP keys, rather then our default approach today of mounting it/them as a secret. If you look under the https://github.com/mozilla/sops#usage you will see instructions for using various cloud providers or Hashicorp Vault as the store for the PGP keys used to decrypt values. We even already have the framework in place in PSR to pass in params to the SOPSConfigValueDecryptor to use something other then file system mounted PGP keys, its just never been tested because didn't have anyone interested in putting in the time to test and write out any necissary instructions. But that is different then using something like Hashicorp Vault to store the values, which would need its own ConfigValueDecryptor. As far as |
@itewk Perhaps the solution to this is to document how a new Decryptor can be implemented. If we already support it then documenting the process is sufficient for people to build their own implementations. I picked Hashicorp Vault as an example because it was top of mind, but the RFE is about 3rd party secret systems in general. I'll adjust the RFE to make that clear and propose documentation instead. I agree that SOPS supports 3rd party systems, but I don't see this as a solution - instead of allowing the 3rd party secret system to encrypt and manage my data, I still need to fiddle with PGP keys and encrypt it myself first. That still means that the data is being protected by SOPS, not the 3rd party system, which may raise questions about SOPS encryption/decryption algorithms, FIPS compliance, etc. Better to just let the external system deal with it all and PSR gets the decrypted value. |
@adamgoossens sounds good. how about you try to make the |
Issue
Currently, PSR uses SOPS to store encrypted values and uses a SOPS decryptor to extract that value on access to the config item.
Many organisations will have third party systems for secret storage (e.g. Vault, Conjur), and these might be the 'official' secret store in those organisations. It would be ideal to be able to use PSR to retrieve and use secrets from these systems, referencing them from config like so (for example):
my_vault_secret: VAULT_ENC[/path/to/my/secret]
Possible Solution
This is possible through the
ConfigValueDecryptor
classes, however it needs to be documented. The documentation would need to cover:With documentation in place it becomes easier for additional contributions for other secret store mechanisms.
The text was updated successfully, but these errors were encountered: