Replies: 1 comment 1 reply
-
Thanks for starting the discussion! Broadly speaking, a major factor in the design of the current Secrets functionality (#868) was to avoid storing any sensitive/encrypted data in Nautobot itself. Our storage of encrypted Git tokens using As a counterpart to the existing secrets "read" functionality (generic API for retrieving an existing stored value from Hashicorp Vault, AWS Secrets Manager, etc.), we considered a corresponding "write" feature (generic API for creating/updating a stored value in any given backend) but felt, at least for now, that definition and management of secrets should be done in the actual system responsible for storing them, rather than being proxied through Nautobot. |
Beta Was this translation helpful? Give feedback.
-
I took a closer look at the new Secrets Functionality.
In my opinion there should be a general functionality within Nautobot that allows encryption and decryption in a standard way.
This could be used to store sensitive information like e.g. access-credentials for an external password-safe like Thycotic Secret-Server in Nautobot.
It would be nice to have forms.fields for text and password data that utilizes this en-/decryption functionality automatically.
To be most flexible with defining the encryption key, i'll suggest to use a environment variable that will point to an existing file that keeps the actual encryption key or if the file does not exist using the value as encryption key
My suggestion will be to define an environment variable NAUTOBOT_SECRETS_ENCRYPTION_KEY_OR_FILENAME that:
This will allow to:
The implementation could utilize aes512 encryption libraries like
pycryptodomex
.Whats your thoughts?
Beta Was this translation helpful? Give feedback.
All reactions