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

enforce 2FA policy on removal of second factor and login #3803

Merged

Conversation

stefan0xC
Copy link
Contributor

after a user's 2FA is removed, they should be deleted from all organizations where the 2fA policy is enforced.

fixes #3798

@BlackDex
Copy link
Collaborator

Do we need to delete the user? Or can we revoke the user instead?

@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch from e626392 to deede74 Compare August 26, 2023 23:39
@stefan0xC
Copy link
Contributor Author

Not sure if that is what Bitwarden does but I think we should be able to revoke the user instead. This will also revoke users instead of removing them when enabling the policy in the first place.

@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch from deede74 to 2b0e12d Compare August 27, 2023 03:00
@BlackDex
Copy link
Collaborator

It does make it more easy to see for the admins and owners if a user is still part of the org, but just revoked.
The only thing that i didn't see when scrolling through the changes is, that is there a check done on the server side when a user is restored if 2FA is enforced? Not that an admin or owner is able to restore the user without that user having 2FA enabled?

Also, maybe we should not retrieve the Org data at all if the user should have 2FA enabled and the org requires it, instead of depending on the state of the users membership to an org?

@stefan0xC
Copy link
Contributor Author

The only thing that i didn't see when scrolling through the changes is, that is there a check done on the server side when a user is restored if 2FA is enforced? Not that an admin or owner is able to restore the user without that user having 2FA enabled?

That check is already done in _restore_organization_user:

if user_org.atype < UserOrgType::Admin {
match OrgPolicy::is_user_allowed(&user_org.user_uuid, org_id, false, conn).await {
Ok(_) => {}
Err(OrgPolicyErr::TwoFactorMissing) => {
err!("You cannot restore this user because it has no two-step login method activated");
}

Also, maybe we should not retrieve the Org data at all if the user should have 2FA enabled and the org requires it, instead of depending on the state of the users membership to an org?

Not sure I understand. Do you mean we should have a different method of enforcing the policy if we check for an organization? I.e. so we don't have to look up the org data multiple times for each member.

@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch 2 times, most recently from 1d2e461 to b2b79a1 Compare August 28, 2023 19:35
@stefan0xC
Copy link
Contributor Author

stefan0xC commented Aug 28, 2023

Refactored the code so it's hopefully more efficient. @BlackDex I hope this is what you meant? Regarding the treatment of invited users I'm not sure what the best way to handle them is. I agree that revoking is definitely an improvement over removing a user. But I have to think about what happens to invited users if we don't make this exemption.

Checking for the member status only in enforce_2fa_policy_for_org():

  • If a new account is invited to an organization with the 2FA policy enabled, joining that organization will fail for email invitees but it might succeed if mail is disabled. (Not sure about that but maybe we need to also enforce the policy on login?)
  • If an existing account (no 2FA enabled) gets invited to an organization with the 2FA policy not enabled, they will not be revoked if the organization decides to enable the 2FA policy. If they try to join they will get the error message and know that they have to set up a 2FA provider.
  • Only problem is a rare edge case: If an invited user enables 2FA and removes the 2FA themselves (or via /admin) before accepting the invitation. Then the user will be revoked and can't complete the invitation on their own, even if they enable 2FA again. And until they have done that, they can't be restored. (Which would be less of a problem if the users get removed)

Making an exception if a user is invited also in enforce_2fa_policy() should prevent that. I.e. no invitation will be revoked because they have not joined the organization. This should be always safe. (And it would not affect existing users where mail is disabled because they will be accepted automatically if their account exists. So maybe we need to add the OrgPolicy::is_user_allowed check to send_invite()?)

edit: Okay the check is done at _confirm_invite so it should be okay even when mail is disabled.

@BlackDex
Copy link
Collaborator

Refactored the code so it's hopefully more efficient. @BlackDex I hope this is what you meant? Regarding the treatment of invited users I'm not sure what the best way to handle them is. I agree that revoking is definitely an improvement over removing a user. But I have to think about what happens to invited users if we don't make this exemption.

Checking for the member status only in enforce_2fa_policy_for_org():

* If a new account is invited to an organization with the 2FA policy enabled, joining that organization will fail for email invitees but it might succeed if mail is disabled. (Not sure about that but maybe we need to also enforce the policy on login?)

The latter was what I meant. Check if a user has 2FA enabled if an org needs this, and if so, just not return that org in the sync list, not even if that user is a full member (Except if that member is an owner or admin of course).

* If an existing account (no 2FA enabled) gets invited to an organization with the 2FA policy not enabled, they will not be revoked if the organization decides to enable the 2FA policy. If they try to join they will get the error message and know that they have to set up a 2FA provider.

* Only problem is a rare edge case: If an invited user enables 2FA and removes the 2FA themselves (or via `/admin`) before accepting the invitation. Then the user will be revoked and can't complete the invitation on their own, even if they enable 2FA again. And until they have done that, they can't be restored. (Which would be less of a problem if the users get removed)

Making an exception if a user is invited also in enforce_2fa_policy() should prevent that. I.e. no invitation will be revoked because they have not joined the organization. This should be always safe. (And it would not affect existing users where mail is disabled because they will be accepted automatically if their account exists. So maybe we need to add the OrgPolicy::is_user_allowed check to send_invite()?)

I think the latter sounds sane and valid. That would make it user-friendly and safe i think.
I have not checked if you can see the 2FA status of a user in the revoked overview, but if that is the case, that would be nice.

@BlackDex
Copy link
Collaborator

BlackDex commented Oct 7, 2023

Quick look at the code again, looks ok too me. Not yet tested it my self though.

@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch from f81dfc0 to acd0628 Compare October 9, 2023 17:00
@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch from acd0628 to 91b1f48 Compare October 21, 2023 13:10
@stefan0xC stefan0xC changed the title enforce 2FA policy on removal enforce 2FA policy on removal of second factor and login Oct 21, 2023
Copy link
Collaborator

@BlackDex BlackDex left a comment

Choose a reason for hiding this comment

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

I have not yet tested the code it self, but it looks ok on first sight.
Some small changes i think which could make it better :).

src/api/identity.rs Show resolved Hide resolved
src/api/core/two_factor/mod.rs Outdated Show resolved Hide resolved
src/api/core/two_factor/mod.rs Outdated Show resolved Hide resolved
@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch 2 times, most recently from 3912a5d to 93dac15 Compare October 23, 2023 09:11
@stefan0xC
Copy link
Contributor Author

I've removed a commit because UserOrganization::find_by_user_and_policy will already only return confirmed users

.filter(
users_organizations::status.eq(UserOrgStatus::Confirmed as i32)
)
so the additional check is not necessary.

Maybe we could improve enforce_2fa_policy_for_org() to only affect confirmed users as well, since accepting/confirming will already prevent users from joining if the policy is active.

@stefan0xC stefan0xC force-pushed the enforce-2fa-policy-on-removal branch 2 times, most recently from b312864 to 37cc8fc Compare October 26, 2023 11:52
@tessus
Copy link
Contributor

tessus commented Dec 5, 2023

May I ask what the status is? I've tested this and it works.

Copy link
Collaborator

@BlackDex BlackDex left a comment

Choose a reason for hiding this comment

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

I think overall it is ok, and workings also as far as i can tell.
Just needs a rebase a few small tweaks to make it more nice.

src/api/identity.rs Outdated Show resolved Hide resolved
Copy link
Collaborator

@BlackDex BlackDex left a comment

Choose a reason for hiding this comment

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

I think overall it is ok, and workings also as far as i can tell.
Just needs a rebase a few small tweaks to make it more nice.

users should be revoked when their second factors are removed.

we want to revoke users so they don't have to be invited again and
organization admins and owners are aware that they no longer have
access.

we make an exception for non-confirmed users to speed up the invitation
process as they would have to be restored before they can accept their
invitation or be confirmed.

if email is enabled, invited users have to add a second factor before
they can accept the invitation to an organization with 2fa policy.
and if it is not enabled that check is done when confirming the user.
if a user doesn't have a second factor check if they are in an
organization that has the 2fa policy enabled to revoke their access
@dani-garcia dani-garcia merged commit 2c36993 into dani-garcia:main Jan 1, 2024
5 checks passed
@stefan0xC stefan0xC deleted the enforce-2fa-policy-on-removal branch January 1, 2024 19:00
lumpsoid pushed a commit to lumpsoid/vaultwarden that referenced this pull request Jan 14, 2024
…#3803)

* enforce 2fa policy on removal of second factor

users should be revoked when their second factors are removed.

we want to revoke users so they don't have to be invited again and
organization admins and owners are aware that they no longer have
access.

we make an exception for non-confirmed users to speed up the invitation
process as they would have to be restored before they can accept their
invitation or be confirmed.

if email is enabled, invited users have to add a second factor before
they can accept the invitation to an organization with 2fa policy.
and if it is not enabled that check is done when confirming the user.

* use &str instead of String in log_event()

* enforce the 2fa policy on login

if a user doesn't have a second factor check if they are in an
organization that has the 2fa policy enabled to revoke their access
truecharts-admin added a commit to truecharts/charts that referenced this pull request Jan 31, 2024
…1.30.2@ab34a7b by renovate (#17766)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[docker.io/vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden)
| patch | `1.30.1` -> `1.30.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden
(docker.io/vaultwarden/server)</summary>

###
[`v1.30.2`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.2)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.1...1.30.2)

⚠️ **Note:** The WebSockets service for live sync has been integrated in
the main HTTP server, which means simpler proxy setups that don't
require a separate rule to redirect WS traffic to port 3012. Please
check the updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- Prevent generating an error during ws close by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4127
- Update Rust, Crates, Profile and Actions by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4126
- Several small fixes for open issues by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4143
- Fix the version string by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4153
- Decrease JWT Refresh/Auth token by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4163
- Update crates by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4173
- Add additional build target which optimizes for size by
[@&#8203;gladiac](https://togithub.com/gladiac) in
[dani-garcia/vaultwarden#4096
- Update web-vault to v2023.12.0 by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4201
- Update Rust and Crates by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4211
- Fix Single Org Policy check by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4207
- Allow customizing the featureStates by
[@&#8203;PKizzle](https://togithub.com/PKizzle) in
[dani-garcia/vaultwarden#4168
- Fix
[#&#8203;3413](https://togithub.com/dani-garcia/vaultwarden/issues/3413):
push to users accessing the collections using groups by
[@&#8203;matlink](https://togithub.com/matlink) in
[dani-garcia/vaultwarden#3757
- US or EU Data Region Selection by
[@&#8203;toto-xoxo](https://togithub.com/toto-xoxo) in
[dani-garcia/vaultwarden#3752
- enforce 2FA policy on removal of second factor and login by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3803
- improve emergency access when not enabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4227
- Update crates and fix icon issue by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4237
- Bump h2 from 0.3.23 to 0.3.24 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[dani-garcia/vaultwarden#4260
- Fix bulk collection deletion by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4257
- fix: use black text for update badge (better contrast) by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#4245
- prevent side effects if groups are disabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4265
- Update crates, web-vault to 2024.1.2 and GHA by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4275
- Return 404 when user public_key is empty by
[@&#8203;Timshel](https://togithub.com/Timshel) in
[dani-garcia/vaultwarden#4271
- Improve file limit handling by
[@&#8203;dani-garcia](https://togithub.com/dani-garcia) in
[dani-garcia/vaultwarden#4242
- Fix attachment upload size check by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4282
- err on invalid feature flag by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4263
- register missing push devices at login by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3792
- Update env template file by
[@&#8203;gzfrozen](https://togithub.com/gzfrozen) in
[dani-garcia/vaultwarden#4276

#### New Contributors

- [@&#8203;gladiac](https://togithub.com/gladiac) made their first
contribution in
[dani-garcia/vaultwarden#4096
- [@&#8203;PKizzle](https://togithub.com/PKizzle) made their first
contribution in
[dani-garcia/vaultwarden#4168
- [@&#8203;matlink](https://togithub.com/matlink) made their first
contribution in
[dani-garcia/vaultwarden#3757
- [@&#8203;toto-xoxo](https://togithub.com/toto-xoxo) made their first
contribution in
[dani-garcia/vaultwarden#3752
- [@&#8203;Timshel](https://togithub.com/Timshel) made their first
contribution in
[dani-garcia/vaultwarden#4271
- [@&#8203;gzfrozen](https://togithub.com/gzfrozen) made their first
contribution in
[dani-garcia/vaultwarden#4276

**Full Changelog**:
dani-garcia/vaultwarden@1.30.1...1.30.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10pm on monday" in timezone
Europe/Amsterdam, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNjIuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE2Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
GabrielBarzen pushed a commit to GabrielBarzen/charts that referenced this pull request Feb 2, 2024
…1.30.2@ab34a7b by renovate (truecharts#17766)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[docker.io/vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden)
| patch | `1.30.1` -> `1.30.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden
(docker.io/vaultwarden/server)</summary>

###
[`v1.30.2`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.2)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.1...1.30.2)

⚠️ **Note:** The WebSockets service for live sync has been integrated in
the main HTTP server, which means simpler proxy setups that don't
require a separate rule to redirect WS traffic to port 3012. Please
check the updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- Prevent generating an error during ws close by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4127
- Update Rust, Crates, Profile and Actions by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4126
- Several small fixes for open issues by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4143
- Fix the version string by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4153
- Decrease JWT Refresh/Auth token by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4163
- Update crates by [@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4173
- Add additional build target which optimizes for size by
[@&truecharts#8203;gladiac](https://togithub.com/gladiac) in
[dani-garcia/vaultwarden#4096
- Update web-vault to v2023.12.0 by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4201
- Update Rust and Crates by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4211
- Fix Single Org Policy check by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4207
- Allow customizing the featureStates by
[@&truecharts#8203;PKizzle](https://togithub.com/PKizzle) in
[dani-garcia/vaultwarden#4168
- Fix
[#&truecharts#8203;3413](https://togithub.com/dani-garcia/vaultwarden/issues/3413):
push to users accessing the collections using groups by
[@&truecharts#8203;matlink](https://togithub.com/matlink) in
[dani-garcia/vaultwarden#3757
- US or EU Data Region Selection by
[@&truecharts#8203;toto-xoxo](https://togithub.com/toto-xoxo) in
[dani-garcia/vaultwarden#3752
- enforce 2FA policy on removal of second factor and login by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3803
- improve emergency access when not enabled by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4227
- Update crates and fix icon issue by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4237
- Bump h2 from 0.3.23 to 0.3.24 by
[@&truecharts#8203;dependabot](https://togithub.com/dependabot) in
[dani-garcia/vaultwarden#4260
- Fix bulk collection deletion by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4257
- fix: use black text for update badge (better contrast) by
[@&truecharts#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#4245
- prevent side effects if groups are disabled by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4265
- Update crates, web-vault to 2024.1.2 and GHA by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4275
- Return 404 when user public_key is empty by
[@&truecharts#8203;Timshel](https://togithub.com/Timshel) in
[dani-garcia/vaultwarden#4271
- Improve file limit handling by
[@&truecharts#8203;dani-garcia](https://togithub.com/dani-garcia) in
[dani-garcia/vaultwarden#4242
- Fix attachment upload size check by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4282
- err on invalid feature flag by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4263
- register missing push devices at login by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3792
- Update env template file by
[@&truecharts#8203;gzfrozen](https://togithub.com/gzfrozen) in
[dani-garcia/vaultwarden#4276

#### New Contributors

- [@&truecharts#8203;gladiac](https://togithub.com/gladiac) made their first
contribution in
[dani-garcia/vaultwarden#4096
- [@&truecharts#8203;PKizzle](https://togithub.com/PKizzle) made their first
contribution in
[dani-garcia/vaultwarden#4168
- [@&truecharts#8203;matlink](https://togithub.com/matlink) made their first
contribution in
[dani-garcia/vaultwarden#3757
- [@&truecharts#8203;toto-xoxo](https://togithub.com/toto-xoxo) made their first
contribution in
[dani-garcia/vaultwarden#3752
- [@&truecharts#8203;Timshel](https://togithub.com/Timshel) made their first
contribution in
[dani-garcia/vaultwarden#4271
- [@&truecharts#8203;gzfrozen](https://togithub.com/gzfrozen) made their first
contribution in
[dani-garcia/vaultwarden#4276

**Full Changelog**:
dani-garcia/vaultwarden@1.30.1...1.30.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10pm on monday" in timezone
Europe/Amsterdam, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNjIuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE2Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
mruoss pushed a commit to mruoss/truecharts that referenced this pull request Feb 4, 2024
…1.30.2@ab34a7b by renovate (truecharts#17766)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[docker.io/vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden)
| patch | `1.30.1` -> `1.30.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden
(docker.io/vaultwarden/server)</summary>

###
[`v1.30.2`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.2)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.1...1.30.2)

⚠️ **Note:** The WebSockets service for live sync has been integrated in
the main HTTP server, which means simpler proxy setups that don't
require a separate rule to redirect WS traffic to port 3012. Please
check the updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- Prevent generating an error during ws close by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4127
- Update Rust, Crates, Profile and Actions by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4126
- Several small fixes for open issues by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4143
- Fix the version string by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4153
- Decrease JWT Refresh/Auth token by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4163
- Update crates by [@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4173
- Add additional build target which optimizes for size by
[@&truecharts#8203;gladiac](https://togithub.com/gladiac) in
[dani-garcia/vaultwarden#4096
- Update web-vault to v2023.12.0 by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4201
- Update Rust and Crates by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4211
- Fix Single Org Policy check by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4207
- Allow customizing the featureStates by
[@&truecharts#8203;PKizzle](https://togithub.com/PKizzle) in
[dani-garcia/vaultwarden#4168
- Fix
[#&truecharts#8203;3413](https://togithub.com/dani-garcia/vaultwarden/issues/3413):
push to users accessing the collections using groups by
[@&truecharts#8203;matlink](https://togithub.com/matlink) in
[dani-garcia/vaultwarden#3757
- US or EU Data Region Selection by
[@&truecharts#8203;toto-xoxo](https://togithub.com/toto-xoxo) in
[dani-garcia/vaultwarden#3752
- enforce 2FA policy on removal of second factor and login by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3803
- improve emergency access when not enabled by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4227
- Update crates and fix icon issue by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4237
- Bump h2 from 0.3.23 to 0.3.24 by
[@&truecharts#8203;dependabot](https://togithub.com/dependabot) in
[dani-garcia/vaultwarden#4260
- Fix bulk collection deletion by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4257
- fix: use black text for update badge (better contrast) by
[@&truecharts#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#4245
- prevent side effects if groups are disabled by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4265
- Update crates, web-vault to 2024.1.2 and GHA by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4275
- Return 404 when user public_key is empty by
[@&truecharts#8203;Timshel](https://togithub.com/Timshel) in
[dani-garcia/vaultwarden#4271
- Improve file limit handling by
[@&truecharts#8203;dani-garcia](https://togithub.com/dani-garcia) in
[dani-garcia/vaultwarden#4242
- Fix attachment upload size check by
[@&truecharts#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4282
- err on invalid feature flag by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4263
- register missing push devices at login by
[@&truecharts#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3792
- Update env template file by
[@&truecharts#8203;gzfrozen](https://togithub.com/gzfrozen) in
[dani-garcia/vaultwarden#4276

#### New Contributors

- [@&truecharts#8203;gladiac](https://togithub.com/gladiac) made their first
contribution in
[dani-garcia/vaultwarden#4096
- [@&truecharts#8203;PKizzle](https://togithub.com/PKizzle) made their first
contribution in
[dani-garcia/vaultwarden#4168
- [@&truecharts#8203;matlink](https://togithub.com/matlink) made their first
contribution in
[dani-garcia/vaultwarden#3757
- [@&truecharts#8203;toto-xoxo](https://togithub.com/toto-xoxo) made their first
contribution in
[dani-garcia/vaultwarden#3752
- [@&truecharts#8203;Timshel](https://togithub.com/Timshel) made their first
contribution in
[dani-garcia/vaultwarden#4271
- [@&truecharts#8203;gzfrozen](https://togithub.com/gzfrozen) made their first
contribution in
[dani-garcia/vaultwarden#4276

**Full Changelog**:
dani-garcia/vaultwarden@1.30.1...1.30.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 10pm on monday" in timezone
Europe/Amsterdam, Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://togithub.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNjIuMiIsInVwZGF0ZWRJblZlciI6IjM3LjE2Mi4yIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
arthurgeek pushed a commit to arthurgeek/vaultwarden-fly-template that referenced this pull request Mar 18, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden) |
stage | patch | `1.30.1-alpine` -> `1.30.5-alpine` |

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden (vaultwarden/server)</summary>

###
[`v1.30.5`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.5)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.4...1.30.5)

#### What's Changed

- fix: web API call for jquery 3.7.1 by
[@&#8203;calvin-li-developer](https://togithub.com/calvin-li-developer)
in
[dani-garcia/vaultwarden#4400

#### New Contributors

-
[@&#8203;calvin-li-developer](https://togithub.com/calvin-li-developer)
made their first contribution in
[dani-garcia/vaultwarden#4400

**Full Changelog**:
dani-garcia/vaultwarden@1.30.4...1.30.5

###
[`v1.30.4`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.4)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.3...1.30.4)

⚠️ Note: The WebSockets service for live sync has been integrated in the
main HTTP server, which means simpler proxy setups that don't require a
separate rule to redirect WS traffic to port 3012. Please check the
updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- Update crates to fix new builds by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4308
- Add Kubernetes environment detection by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4290
- Update GHA Workflows by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4309
- Update Rust, crates and web-vault by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4328
- Change the codegen-units for low resources by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4336
- Fix env templateto ensure compatibility with systemd's EnvironmentFile
parsing by [@&#8203;seiuneko](https://togithub.com/seiuneko) in
[dani-garcia/vaultwarden#4315
- Update crates, GHA and a Python script by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4357

#### New Contributors

- [@&#8203;seiuneko](https://togithub.com/seiuneko) made their first
contribution in
[dani-garcia/vaultwarden#4315

**Full Changelog**:
dani-garcia/vaultwarden@1.30.3...1.30.4

###
[`v1.30.3`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.3)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.2...1.30.3)

This is a minor release to fix some issues with push notification device
registration and docker healthcheck.

⚠️ **Note:** The WebSockets service for live sync has been integrated in
the main HTTP server, which means simpler proxy setups that don't
require a separate rule to redirect WS traffic to port 3012. Please
check the updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- fix push device registration by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4297
- Fix healthcheck when using .env file by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4299

**Full Changelog**:
dani-garcia/vaultwarden@1.30.2...1.30.3

###
[`v1.30.2`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.30.2)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.30.1...1.30.2)

⚠️ **Note:** The WebSockets service for live sync has been integrated in
the main HTTP server, which means simpler proxy setups that don't
require a separate rule to redirect WS traffic to port 3012. Please
check the updated examples in the
[wiki](https://togithub.com/dani-garcia/vaultwarden/wiki/Proxy-examples).
It's recommended to migrate to this new setup as using the old server on
port 3012 is deprecated, won't receive new features and will be removed
in the next release.

#### What's Changed

- Prevent generating an error during ws close by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4127
- Update Rust, Crates, Profile and Actions by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4126
- Several small fixes for open issues by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4143
- Fix the version string by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4153
- Decrease JWT Refresh/Auth token by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4163
- Update crates by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4173
- Add additional build target which optimizes for size by
[@&#8203;gladiac](https://togithub.com/gladiac) in
[dani-garcia/vaultwarden#4096
- Update web-vault to v2023.12.0 by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4201
- Update Rust and Crates by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4211
- Fix Single Org Policy check by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4207
- Allow customizing the featureStates by
[@&#8203;PKizzle](https://togithub.com/PKizzle) in
[dani-garcia/vaultwarden#4168
- Fix
[#&#8203;3413](https://togithub.com/dani-garcia/vaultwarden/issues/3413):
push to users accessing the collections using groups by
[@&#8203;matlink](https://togithub.com/matlink) in
[dani-garcia/vaultwarden#3757
- US or EU Data Region Selection by
[@&#8203;toto-xoxo](https://togithub.com/toto-xoxo) in
[dani-garcia/vaultwarden#3752
- enforce 2FA policy on removal of second factor and login by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3803
- improve emergency access when not enabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4227
- Update crates and fix icon issue by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4237
- Bump h2 from 0.3.23 to 0.3.24 by
[@&#8203;dependabot](https://togithub.com/dependabot) in
[dani-garcia/vaultwarden#4260
- Fix bulk collection deletion by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4257
- fix: use black text for update badge (better contrast) by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#4245
- prevent side effects if groups are disabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4265
- Update crates, web-vault to 2024.1.2 and GHA by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4275
- Return 404 when user public_key is empty by
[@&#8203;Timshel](https://togithub.com/Timshel) in
[dani-garcia/vaultwarden#4271
- Improve file limit handling by
[@&#8203;dani-garcia](https://togithub.com/dani-garcia) in
[dani-garcia/vaultwarden#4242
- Fix attachment upload size check by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#4282
- err on invalid feature flag by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#4263
- register missing push devices at login by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3792
- Update env template file by
[@&#8203;gzfrozen](https://togithub.com/gzfrozen) in
[dani-garcia/vaultwarden#4276

#### New Contributors

- [@&#8203;gladiac](https://togithub.com/gladiac) made their first
contribution in
[dani-garcia/vaultwarden#4096
- [@&#8203;PKizzle](https://togithub.com/PKizzle) made their first
contribution in
[dani-garcia/vaultwarden#4168
- [@&#8203;matlink](https://togithub.com/matlink) made their first
contribution in
[dani-garcia/vaultwarden#3757
- [@&#8203;toto-xoxo](https://togithub.com/toto-xoxo) made their first
contribution in
[dani-garcia/vaultwarden#3752
- [@&#8203;Timshel](https://togithub.com/Timshel) made their first
contribution in
[dani-garcia/vaultwarden#4271
- [@&#8203;gzfrozen](https://togithub.com/gzfrozen) made their first
contribution in
[dani-garcia/vaultwarden#4276

**Full Changelog**:
dani-garcia/vaultwarden@1.30.1...1.30.2

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on saturday" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/arthurgeek/vaultwarden-fly-template).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xNTMuMiIsInVwZGF0ZWRJblZlciI6IjM3LjIyMC4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
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.

2FA Policy not enforced after removing a users 2FA through the Admin interface
4 participants