Skip to content

Add trusted device verification - #7034

Open
rwjack wants to merge 2 commits into
dani-garcia:mainfrom
rwjack:main
Open

Add trusted device verification#7034
rwjack wants to merge 2 commits into
dani-garcia:mainfrom
rwjack:main

Conversation

@rwjack

@rwjack rwjack commented Mar 29, 2026

Copy link
Copy Markdown

This kind of sucks. I was hoping to make it work so the whole thing is idiot proof.

I guess friends and family will still have to type their master password at least once, and will still have to remember some sort of pin at the very least, for unlocking the extension, but at least this eliminates the need for typing the master password multiple times during new device registration for example.

@rwjack

rwjack commented Mar 30, 2026

Copy link
Copy Markdown
Author

I'd like to work on an open source version of the key connector (making it from scratch basically), but I have a crucial question before I start. Do you guys think this should be an external service/container, or does it make more sense to build it into VW?

My goal is to have SSO only logins, while only prompting the user for a master password during account creation.

@BlackDex

Copy link
Copy Markdown
Collaborator

I'd like to work on an open source version of the key connector (making it from scratch basically), but I have a crucial question before I start. Do you guys think this should be an external service/container, or does it make more sense to build it into VW?

My goal is to have SSO only logins, while only prompting the user for a master password during account creation.

I would suggest to read the comments posted here: #6949

In my opinion, Key Connector shouldn't be something supported by Vaultwarden. The chances of having security issues in either Vaultwarden or the custom Key Connector are always possible and makes the whole logic keeping everything safe and encrypted almost nill.

Comment thread src/util.rs Outdated
@rwjack

rwjack commented Mar 30, 2026

Copy link
Copy Markdown
Author

I would suggest to read the comments posted here: #6949

In my opinion, Key Connector shouldn't be something supported by Vaultwarden. The chances of having security issues in either Vaultwarden or the custom Key Connector are always possible and makes the whole logic keeping everything safe and encrypted almost nill.

Hmmm, I see. I totally agree with the security implications. My main use case is to have "something of value", so I can have better arguments while convincing friends and family to switch from cloud based password managers. As you already know, those "just work", and nobody cares to enter a password these days, let alone be forced to do so on every log in.

This is why I consider my local only VW instance, even with a "potentially vulnerable" key-connector, to still be a better option, while literally being a better option user-flow wise (Paired with PocketID in my case, which is passkeys only, so it can't get more idiot proof than that).

Now, regarding my security (and the security of other like-minded folks out there), the idea was to have a per user toggle, which would allow/deny key connector usage for that account - making the whole thing optional, while being a cool feature nevertheless. I'm sure I wouldn't use the key connector for my main VW account, but for the phone account, friends, family - it just makes sense.

And of course a global env var would be required to turn on the feature at all. Either way, architecture wise, I'm leaning towards keeping the key connector in a separate container / as a separate service.

My main dilemma is that the per-user config toggle would likely require modifying the settings page, and since I want this change to be upstreamable, I know UI patches create potential maintenance problems down the road, so I still haven't figured out if that toggle (or an entire custom user settings page, if there's more than one setting we'd like to control) should be separate from the original BW web vault, or if I could just patch it in there.

@Timshel

Timshel commented May 22, 2026

Copy link
Copy Markdown
Contributor

Hey,
Played with the PR, broke some stuff and discovered it's missing the /devices/lost-trust endpoint.

Tested changing the activation condition to require only that the account already has a masterPassword which make using the feature possible without having to setup an Organization.

But wonder if it might make sense to gate it behind a separate setting and keep the official logic as the default in case the instance admin does not really trust the users to store their master password (since it's almost never required it increase the risk of losing it).

};

json!({
"HasAdminApproval": has_admin_approval,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should probably always be false since it's missing the logic to handle admin approval.

@anthonyalayo

Copy link
Copy Markdown

Hopefully either this or the derivative PR make it in. This would be a great feature for everyone.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants