Skip to content
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

[Feature Request] Allow a user to have multiple note "vaults" and manage them independantly #621

Open
arcanecode opened this issue Jul 10, 2019 · 1 comment

Comments

Projects
None yet
2 participants
@arcanecode
Copy link

commented Jul 10, 2019

Background

I recently started work at a new client, and for the first few days I didn't have a computer. I pulled out my own laptop and used, of course, standard notes to document my first week's worth of meetings. When I got my work machine, I installed standard notes and signed in.

I've realized though, I have a problem. My notes for this client are now mixed in with my personal ones. If I were to leave, I wouldn't want the client pulling up standard notes and getting to some of my non client data.

I can, of course, setup a new user id/ password based on my client, which has some drawbacks.

If I take my own laptop to a meeting (the client only has desktops) then I would have to swap between my personal and client accounts, which means logging out and back in. And when you logout, it clears the cache, which means when I log back in it has to redownload and decrypt everything.

The other issue I face is around subscription based features. I'm a subscriber, and that is tied to my main ID. If I create a new login / password to use on my client system, I lose my subscription features.

What I guess I'm looking for is a way to let one user have multiple note "vaults" and manage them independent of each other.

The Request

First, separate the sign in to standard notes from the ID used to create a vault.

Next, instead of the email address, allow a user defined name for the vault ID. Encryption would be a combination of the email, vault ID, and password.

Provide a user a way to create multiple vaults and easily switch between them.

Allow a user to logout out of a single vault, and only clear the cache for that single vault.

Allow a user to logout of all values at once, and thus clear all the cache's.

Finally, make it so a user is not required to have all values across all their PCs. Thus on computer 1, a user could have Vault A and Vault B, but on computer 2, they may have only logged into Vault B.

The Workflow

All users will have a "default" vault where the vault ID is the same as the email address used to login to standard notes (similar to the way it works now). When a user logs into standard notes, they are taken to this default vault. (If it doesn't exist, in the case of a first time user it would be created).

A user would not be allowed to delete his default vault, or remove it, but they could simply choose not to use it.

A new vault menu would be added, with the option of:

Create New: Create new is pretty obvious, it prompts for a vault name and password, then creates it.

Add Existing Vault: This would make the user supply an existing vault name and ID. If the name and ID are correct, the vault would be down loaded and decrypted. You might want to show the user a list of their existing vaults, on the other hand it might be more secure if we made the user know the vault name and key it in.

Switch Vault: This would have a pop out or similar mechanism to switch to a different vault. Users shouldn't be required to login to a vault when switching, and the local cache should not be removed during a switch. It will list all vaults the user is currently signed into on that device. It will NOT list all of the vaults a user owns.

Sign Out of Vault: This would sign out of the currently selected vault, and remove its cache from the system. When a user signs out of a vault, that vault name would no longer appear on the Switch Vault menu option. After sign out user is taken to their default vault, from there they can go to another vault via the Switch Vault menu option.

Delete Vault: This one is a bit tricky, as you'd have to determine how to coordinate across multiple machines, but users should be allowed to delete a vault when they no longer need it, with the exception of the default vault.

If a user signs out of standard notes, it will cascade sign out of all their vaults and remove all the caches.

Future Idea

This foundation would put you in a good position for another feature, vault sharing. Allow a user to pick a vault, and share that vault with another standard notes user. Presumably the second user would have been given the vault name and password from the vault owner. But once shared, both could work on the same set of notes. (Or, you could make a share read only, so the second user could see but not update the notes).

I could see this being a great enterprise feature, members of a company could create a vault for a new project, and create a shared pool of notes. Or, a husband and wife could have a shared set of notes for their household, but at the same time keep their other notes separated.

Naturally vault sharing should be a paid feature, or perhaps allow sharing with one other person (for example husband and wife) for free, then more than one person has to be a paid feature.

Thanks for your consideration, let me know if you have further questions.

@mobitar

This comment has been minimized.

Copy link
Member

commented Jul 11, 2019

This would be cool. Really it can just be accomplished with multiple account switching. But different workspaces within one account can be another option. This is more of a long term priority due to the complexity of building it out. But something on my mind as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.