-
Notifications
You must be signed in to change notification settings - Fork 24
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
Storing and accessing credentials (e.g. database logins) as actinia user #398
Comments
Now I wrote a function to transfer entries in a KeePass database file into environment variables, that again could be used to authenticate users at data sources services / databases.
For use in actinia modules, two questions remain:
Another approach could be bitwarden (that could be connected to KeyCloak if I understood correctly)... |
Apache Airflow (also a Python based web app) supports different external backends, like e.g. the Hashicorp Vault for secrets management. Without external secrets backends, Airflow stores credentials as encrypted strings in a PostgreSQL database. Such a solution could possibly be a first approach for actinia too... Just collecting some ideas.... |
We discussed internally and came to the conclusion that a tresor/vault file should be used, e.g. with KeyPass (see Python examples). The key of the file would then be an environment variable or docker secret. The Password itself should be better stored in actinia. The vault file is created by the user and follows a naming convention with his actinia user name in the filename. The file can then be uploaded. Further hints for implementation:
|
Is there already a way to securely store and access e.g. database credentials as an actinia user?
When data is to be fetched from or exported to external databases, one needs some form of storing login credentials for actinia users.
Maybe also credential for data portals, if they are supposed to be accessed userspecific...
It does not seem right to include credentials in API calls in plain text.
One option I could imagine is that a user may upload an encrypted keepass file that in itself is secured (and later accessed) with the actinia password. In actinia credentials could be fetched with e.g. https://pypi.org/project/pykeepass/
But I am no security expert and maybe that is also a terrible idea with regards to security?
The text was updated successfully, but these errors were encountered: