1
0
mirror of https://github.com/bitwarden/server synced 2026-02-02 01:33:19 +00:00
Commit Graph

6596 Commits

Author SHA1 Message Date
Rui Tome
0b612ed889 Implement model validation in PolicyDataValidator and enhance error handling
Added a ValidateModel method to enforce validation rules for policy data. Updated error messages to provide clearer feedback on validation failures. Enhanced unit tests to cover new validation scenarios for MinLength and MinComplexity properties.
2026-01-07 16:26:46 +00:00
Rui Tome
0ae3c5a469 Enhance MasterPasswordPolicyData with validation attributes
Added data annotations for MinComplexity and MinLength properties to enforce validation rules. MinComplexity must be between 0 and 4, and MinLength must be between 12 and 128.
2026-01-07 16:22:49 +00:00
renovate[bot]
f2aa742f76 [deps]: Update dtolnay/rust-toolchain digest to f7ccc83 (#6497)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-07 13:23:02 +01:00
renovate[bot]
d86717eedb [deps]: Update actions/setup-dotnet action to v5.0.1 (#6805)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-07 12:09:12 +01:00
renovate[bot]
46e9b18905 [deps]: Update github/codeql-action action to v4.31.9 (#6806)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-07 11:08:26 +00:00
renovate[bot]
ad6555c221 [deps] Tools: Update MailKit to 4.14.1 (#6621)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-01-07 11:32:15 +01:00
Nik Gilmore
a6e034a88c [PM-27632] Add feature flag pm-27632-cipher-crud-operations-to-sdk (#6790) 2026-01-06 14:26:32 -08:00
Jimmy Vo
63784e1f5f [PM-27882] Add SendOrganizationConfirmationCommand (#6743) 2026-01-06 16:43:36 -05:00
Stephon Brown
530d946857 [PM-29061] Remove Feature Flag 24996 (#6744)
* refactor(billing): Remove flag uses

* refactor(billing): remove redundant endpoint

* chore(billing): remove the flag

* fix(billing): revert changes

* Revert "fix(billing): revert changes"

This reverts commit 92271b380c.

* test(billing): update tests
2026-01-06 20:51:43 +00:00
aj-bw
5e735c8474 after a convo with bre & sre, remove long failing workflow. registry cleanup has moved into automated processes in azure (#6804) 2026-01-06 20:09:28 +00:00
Jeffrey Holland
2026ca103b Remove unused feature flags for Autofill (#6749) 2026-01-06 12:05:48 -05:00
Vijay Oommen
f797825de1 PM-28947 remove feature flag (#6799) 2026-01-06 09:00:12 -06:00
Rui Tomé
1b17d99bfd [PM-29555] Add self-revoke endpoint for declining organization data ownership policy (#6739)
* Add OrganizationUser_SelfRevoked event type to EventType enum

* Add SelfRevokeOrganizationUserCommand implementation and interface for user self-revocation from organizations

* Add unit tests for SelfRevokeOrganizationUserCommand to validate user self-revocation logic, including success scenarios and various failure conditions.

* Add ISelfRevokeOrganizationUserCommand registration to OrganizationServiceCollectionExtensions for user self-revocation functionality

* Add self-revoke user functionality to OrganizationUsersController with new endpoint for user-initiated revocation

* Add integration tests for self-revoke functionality in OrganizationUsersController, covering scenarios for eligible users, non-members, and users with owner/admin roles.

* Add unit test for SelfRevokeOrganizationUserCommand to validate behavior when a user attempts to self-revoke without confirmation. This test checks for a BadRequestException with an appropriate message.

* Add MemberRequirement class for organization membership authorization

- Implemented MemberRequirement to check if a user is a member of the organization.
- Added unit tests for MemberRequirement to validate authorization logic for different user types.

* Update authorization requirement for self-revoke endpoint and add integration test for provider users

- Changed authorization attribute from MemberOrProviderRequirement to MemberRequirement in the RevokeSelfAsync method.
- Added a new integration test to verify that provider users who are not members receive a forbidden response when attempting to revoke themselves.

* Add EligibleForSelfRevoke method to OrganizationDataOwnershipPolicyRequirement

- Implemented the EligibleForSelfRevoke method to determine if a user can self-revoke their data ownership based on their membership status and policy state.
- Added unit tests to validate the eligibility logic for confirmed, invited, and non-policy users, as well as for different organization IDs.

* Refactor self-revoke user command to enhance eligibility checks

- Updated the SelfRevokeOrganizationUserCommand to utilize policy requirements for determining user eligibility for self-revocation.
- Implemented checks to prevent the last owner from revoking themselves, ensuring organizational integrity.
- Modified unit tests to reflect changes in eligibility logic and added scenarios for confirmed owners and admins.
- Removed deprecated policy checks and streamlined the command's dependencies.

* Use CommandResult pattern in self-revoke command

* Clearer documentation
2026-01-06 11:25:14 +00:00
Vincent Salucci
35868c2a65 [PM-22434] Remove CreateDefaultLocation feature flag references (#6758)
* chore: remove ff ref from PoliciesController

* chore: remove ff ref from OrganizationExportController, refs PM-22434

* chore: remove ff ref from CiphersController, refs PM-22434

* chore: remove ff ref from ConfirmOrganizationUserCommand, refs PM-22434

* chore: remove ff refs from OrganizationDataOwnershipPolicyValidator, refs PM-22434

* chore: remove ff ref from OrganizationUserControllerTests, refs PM-22434

* chore: remove ff refs from ConfirmOrganizationUserCommandTests, refs PM-22434

* chore: remove ff refs from OrganizationDataOwnershipPolicyValidatorTests, refs PM-22434

* chore: format, refs PM-22434
2026-01-05 17:27:17 -06:00
Kyle Spearrin
2442d2dabc [PM-30391] fix for org context on sso provisioning (#6797)
* fix for org context on sso provisioning

* tests are no longer needed since there is no logic on feature flag

* lint fixes
2026-01-05 11:56:31 -05:00
cyprain-okeke
76a8f0fd95 [PM 29610]Update Account Storage Endpoint (#6750)
* update account storage endpoint

* Fix the failing test

* Added flag and refactor base on pr comments

* fix the lint error

* Resolve the pr comments

* Fix the failing test

* Fix the failing test

* Return none

* Resolve the lint error

* Fix the failing test

* Add the missing test

* Formatting issues fixed
2026-01-05 10:52:52 -06:00
Thomas Rittson
e9d53c0c6b [PM-30298] Initial documentation for OrganizationAbility pattern (#6781) 2026-01-03 07:48:34 +10:00
Ike
a2ba5289fa [PM-29568] Footer Links lack correct styling (#6784)
* fix: color weight of links in footer.

* fix: css styling
2026-01-02 12:02:57 -05:00
✨ Audrey ✨
484a8e42dc [PM-21918] update send api models to support new email field (#5895)
* update send api models to support new `email` field

* normalize authentication field evaluation order

* document send response converters

* add FIXME to remove unused constructor argument

* add FIXME to remove unused constructor argument

* introduce `tools-send-email-otp-listing` feature flag

* add `ISendOwnerQuery` to dependency graph

* fix broken tests

* added AuthType prop to send related models with test coverage and debt cleanup

* dotnet format

* add migrations

* dotnet format

* make SendsController null safe (tech debt)

* add AuthType col to Sends table, change Emails col length to 4000, and run migrations

* dotnet format

* update SPs to expect AuthType

* include SP updates in migrations

* remove migrations not intended for merge

* Revert "remove migrations not intended for merge"

This reverts commit 7df56e346a.

undo migrations removal

* extract AuthType inference to util method and remove SQLite file

* fix lints

* address review comments

* fix incorrect assignment and adopt SQL conventions

* fix column assignment order in Send_Update.sql

* remove space added to email list

* assign SQL default value of NULL to AuthType

* update SPs to match migration changes

---------

Co-authored-by: Daniel James Smith <2670567+djsmith85@users.noreply.github.com>
Co-authored-by: Alex Dragovich <46065570+itsadrago@users.noreply.github.com>
Co-authored-by: John Harrington <84741727+harr1424@users.noreply.github.com>
2025-12-31 13:37:42 -07:00
Brant DeBow
cc03842f5f Disable database distributed cache in non-self-hosted environments (#6783)
* Disable database distributed cache in non-self-hosted environments

* Added distributed memory cache as a final fallback option
2025-12-31 11:59:59 -05:00
cyprain-okeke
665be6bfb0 [PM-29611] Decouple License from Subscription Response (#6768)
* implement the ticket request

* resolve the build lint error

* Resolve the build lint error

* Address review comments

* Fixt the lint and failing unit test

* Fix NSubstitute mock - use concrete ClaimsPrincipal instead of Arg.Any in Returns()

* resolve InjectUser issues

* Fix the failing testing

* Fix the failing unit test
2025-12-31 17:30:41 +01:00
Mick Letofsky
bf08bd279c Revert review Code Triggered by labeled event (#6785) 2025-12-31 16:56:03 +01:00
Ike
f82552fba9 [PM-29568] Fix footer styling (#6722)
* fix: update footer background color to match UIF Tailwind standards.

* fix: modify spacing for footer

* chore: build templates

* fix: update social icon assets

* fix: update footer image source

* fix: update send access
2025-12-30 14:08:10 -05:00
Mick Letofsky
c98f31a9f7 Review Code Triggered by labeled event (#6782) 2025-12-30 18:22:09 +01:00
Brant DeBow
86a68ab637 Move all event integration code to Dirt (#6757)
* Move all event integration code to Dirt

* Format to fix lint
2025-12-30 10:59:19 -05:00
Isaiah Inuwa
9a340c0fdd Allow mobile clients to create passkeys (#6383) [PM-26177]
* Allow mobile clients to create vault passkeys

* Document uses for authorization policies
2025-12-30 07:31:26 -06:00
Jason Ng
34b4dc3985 [PM-29650] retain item archive date on softdelete (#6771) 2025-12-29 13:30:57 -05:00
Shane Melton
3b5bb76800 [PM-28747] Storage limit bypass for enforce organization ownership policy (#6759)
* [PM-28747] Bypass storage limit when enforce organization data ownership policy is enabled

* [PM-28747] Unit tests for storage limit enforcement

* [PM-28747] Add feature flag check

* [PM-28747] Simplify ignore storage limits policy enforcement

* [PM-28747] Add additional test cases
2025-12-29 09:30:22 -08:00
Dave
2dc4e9a420 feat(2fa-webauthn) [PM-20109]: Increase 2FA WebAuthn Security Key Limit (#6751)
* feat(global-settings) [PM-20109]: Add WebAuthN global settings.

* feat(webauthn) [PM-20109]: Update maximum allowed WebAuthN credentials to use new settings.

* test(webauthn) [PM-20109]: Update command tests to use global configs.

* feat(global-settings) [PM-20109]: Set defaults for maximum allowed credentials.

* feat(two-factor-request-model) [PM-20109]: Remove hard-coded 5 limit on ID validation.

* Revert "test(webauthn) [PM-20109]: Update command tests to use global configs."

This reverts commit ba9f0d5fb6.

* Revert "feat(webauthn) [PM-20109]: Update maximum allowed WebAuthN credentials to use new settings."

This reverts commit d2faef0c13.

* feat(global-settings) [PM-20109]: Add WebAuthNSettings to interface for User Service consumption.

* feat(user-service) [PM-20109]: Add boundary and persistence-time validation for maximum allowed WebAuthN 2FA credentials.

* test(user-service) [PM-20109]: Update tests for WebAuthN limit scenarios.

* refactor(user-service) [PM-20109]: Typo in variable name.

* refactor(user-service) [PM-20109]: Remove unnecessary pending check.

* refactor(user-service) [PM-20109]: Pending check is necessary.

* refactor(webauthn) [PM-20109]: Re-spell WebAuthN => WebAuthn.

* refactor(user-service) [PM-20109]: Re-format pending checks for consistency.

* refactor(user-service) [PM-20109]: Fix type spelling in comments.

* test(user-service) [PM-20109]: Combine premium and non-premium test cases with AutoData.

* refactor(user-service) [PM-20109]: Swap HasPremiumAccessQuery in for CanAccessPremium.

* refactor(user-service) [PM-20109]: Convert limit check to positive, edit comments.
2025-12-29 11:55:05 -05:00
Todd Martin
0f104af921 chore(deps): Move Cosmos cache to Auth ownership 2025-12-29 10:00:05 -05:00
renovate[bot]
8a79bfa673 [deps]: Update actions/upload-artifact action to v6 (#6766)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-29 12:59:46 +01:00
Todd Martin
bf5cacdfc5 chore(dependencies): Ignore minor updates for Platform deps 2025-12-28 13:26:07 -05:00
Derek Nance
0cfb68336b [PM-28025] Revert "chore(feature-flag): [PM-19665] Remove web-push feature flag" (#6779)
This reverts commit 1c60b805bf.
2025-12-26 16:44:34 -06:00
Thomas Rittson
67534e2cda [PM-29556] Fix: changing organization plan nulls out public and private keys (#6738)
Main fix: only assign new key value where old keys are not set
and new keys have been provided.

Refactors:
- use consistent DTO model for keypairs
- delete duplicate property assignment for new orgs
2025-12-26 10:13:12 +10:00
renovate[bot]
96622d7928 [deps]: Update github-action minor (#6327)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-23 16:34:19 -05:00
Tyler
f80a5696a1 BRE-1005 docs(README): add dynamic badges for container image digests (#6769)
BRE-1005 docs(README): add dynamic badges for container image digests
* remove links to packages
2025-12-23 16:02:17 -05:00
Jordan Aasen
3486d29330 remove RemoveCardItemTypePolicy flag (#6760) 2025-12-23 09:12:14 -08:00
renovate[bot]
c632a9490a [deps] Platform: Update Azure.Messaging.EventGrid to v5 (#6215)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-23 10:51:54 -06:00
Andy Pixley
fafc61d7b9 [BRE-1439] Removing obsolete Server image from publish workflow (#6774) 2025-12-23 00:00:17 -05:00
Jared Snider
a82365b5df PM-30125 - IdentityTokenResponse - mark fields as deprecated (#6773) 2025-12-22 15:29:28 -05:00
Alex Morask
2dce8722d6 Remove unused FF (#6709) 2025-12-22 14:14:18 -06:00
sneakernuts
ae3c8317e3 SRE-3582 billing cleanup (#6772) 2025-12-22 13:09:23 -07:00
cyprain-okeke
eb360ffec1 [PM-29930]Fix [Defect] Automatic Sync - Sync License throws error on Self Host (#6770)
* Restore the mistakenly remove controller

* Fix the lint build error
2025-12-22 17:28:27 +01:00
Thomas Rittson
69d72c2ad3 [PM-28485] Move organization events domain to DIRT code ownership (#6685) 2025-12-20 07:32:51 +10:00
renovate[bot]
bc800a788e [deps]: Update actions/checkout action to v6 (#6706)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-12-19 16:06:33 -05:00
Jordan Aasen
457e293fdc [PM-29017] - improve logic for cipher SaveDetailsAsync validation (#6731)
* improve logic for cipher SaveDetailsAsync validation. fix tests

* revert change

* fix test

* remove duplicate semicolon
2025-12-19 11:35:01 -08:00
Jared Snider
e6c97bd850 Revert "refactor(IdentityTokenResponse): [Auth/PM-3287] Remove deprecated res…" (#6755)
This reverts commit bbe682dae9.
2025-12-18 15:10:40 -05:00
Thomas Rittson
cc2d69e1fe [PM-28487] Move Events and EventsProcessor to DIRT ownership (#6678)
* Move Events and EventsProcessor to DIRT ownership

* include test projs

* sort lines alphabetically within group

* fix order

---------

Co-authored-by: Graham Walker <ghwtx@icloud.com>
2025-12-18 14:05:18 -06:00
Mike Amirault
1b41a06e32 [PM-29780] Add feature flag for Send email OTP verification (#6742) 2025-12-18 14:12:56 -05:00
Maciej Zieniuk
a92d7ac129 [PM-27280] Support v2 encryption on key-connector signups (#6712)
* account v2 registration for key connector

* use new user repository functions

* test coverage

* integration test coverage

* documentation

* code review

* missing test coverage

* fix failing test

* failing test

* incorrect ticket number

* moved back request model to Api, created dedicated data class in Core

* sql stored procedure type mismatch, simplification

* key connector authorization handler
2025-12-18 13:43:03 -05:00