The initial idea, was to create a shared password vaults, to be used in enterprises. The reasoning was that, currently most companies, that require access to shared portal services always have the problem of:
- How to share the password, between the employees that need access?
- How to maintain the password up to date (when systems are requiring constant password changes)?
- Basically how to maintain the CIA (Confidentiality, Integrity and Availability) triad?
A possible solution, was shared password vaults. By:
- Creating a shared object store, in which all essential parts of the objects are encrypted
- Combined with managed access to the vaults (who can read, who can create, etc)
Allows a company to create multiple secure storage areas, through which sensitive information can be shared, securely, with only the relevant users.
The initial plan, was only to encompass shared passwords, but after all this time developing, a thought popped up: "Why limit the contents of the vaults to password objects (forms)".
Why not create a template based system, that allows storage of different data structures, and even, god forbid, files?
The backend storage is provided by, a possibly, sharded MariaDB Database Cluster.
NOTE: Sharding and Database Clusters are OPTIONAL
Access to the storage backend, is controlled by a Microservice interface. Which in a production environment, would be the only way to access the vaults (database).
The UX is provided by Svelte based SPA Web Application.
-
REDIS Session Store
- This would allow for the creation of distributed server farms for high workloads
- Make session management more secure, since session sensitive data, would never leave the server farm
-
RabbitMQ Action Server
- For sending notifications, emails, etc
- Offline processing
-
Templates
- Currently the only template available is for encrypted notes
- Need to develop other templates, starting with a Site Password Storage Template
Since this is a multi-server application, please see the Builder Project to see how to get the system up and going. This scripts there have the required information on how to:
- Build
- Integrate and
- Run the Application servers