1
0
mirror of https://github.com/bitwarden/server.git synced 2025-05-06 12:12:18 -05:00

249 Commits

Author SHA1 Message Date
Alex Morask
e77acbc5ad
[PM-19956] [PM-18795] Require provider payment method during setup behind FF (#5752)
* Require provider payment method during setup behind FF

* Fix failing test

* Run dotnet format

* Rui's feedback
2025-05-01 12:12:45 -04:00
Conner Turnbull
cf7a59c077
[Innovation Sprint] Phishing Detection (#5516)
* Initial stubbing out of the phishing service

* Add the phishing domain controller

* Add changes for the phishing domain get

* Add distributed cache to the phishing domain

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>

* Rename the variable name

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>

* Removed IPhishingDomainService

* Feature/phishing detection cronjob (#5512)

* Added caching to EF implementation. Added error handling and logging

* Refactored update method to use sqlbulkcopy instead of performing a round trip for each new insert

* Initial implementation for quartz job to get list of phishing domains

* Updated phishing domain settings to be its own interface

* Add phishing domain detection with checksum-based updates

* Updated auth for phishing domain endpoints to either require api, or licensing claims to support both web and browser clients, and selfhost api clients

* [Innovation Sprint] Updated Phishing domains to rely on blob storage (#5517)

* Updated phishing detection data layer to rely on azure blob storage instead of sql server

* dotnet format

* Took rider refactors

* Ensuring phishing.testcategory.com exists to test against

* Added redis to dev's docker-compose

* Removed redis from cloud profile

* Remove the Authorize attribute

* error whitespace fix whitespace formatting

* error WHITESPACE: Fix whitespace formatting

* Wrapped phishing detection feature behind feature flag (#5532)

* Increased timeout for fetching source list a bunch

* Removed PhishingDomains policy

---------

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>
Co-authored-by: Cy Okeke <cokeke@bitwarden.com>
2025-04-30 11:03:59 -04:00
Alex Morask
db0079cebb
[PM-19009] Remove feature flag: pm-15179-add-existing-orgs-from-provider-portal (#5664)
* Remove feature flag

* Run dotnet format
2025-04-28 16:22:20 -04:00
Daniel James Smith
60f6189314
Move feature flags owned by Data Insights and Reporting team into their own section (#5691)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-04-28 10:41:49 -04:00
Brant DeBow
ad19d3d3ad
[PM-17562] Add feature flag for event-based organization integrations (#5710)
* Added EventBasedOrganizationIntegrations feature flag; Added enforcement of flag at the API layer

* [PM-17562] Use EventBasedOrganizationIntegrations feature flag to turn on/off event queue

* Optimization that removes the need for EventRouteService (from @justindbaur)
2025-04-28 08:20:47 -04:00
SmithThe4th
9a7fddd77c
Removed feature flag (#5707) 2025-04-25 10:15:26 -07:00
Daniel James Smith
cbb1168da8
Remove export-attachments feature flag (#5659)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-04-22 08:14:56 -04:00
Todd Martin
b38c75267f
[PM-19691] Remove duo-redirect feature flag (#5576)
* Completed grouping of feature flags by team.

* Completed grouping feature flags by team.

* Remove email delay feature flag

* Removed feature flag

* Fixed reference.

* Remove flag after merge.
2025-04-21 12:36:38 -04:00
Robyn MacCallum
9218ac0d7c
Add android-chrome-autofill flag (#5668) 2025-04-18 12:47:54 -04:00
Daniel James Smith
f7e5759e7b
Remove GeneratorToolsModernization feature flag (#5660)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-04-17 08:59:00 -04:00
Shane Melton
49bae6c241
[PM-10611] Add EndUserNotifications feature flag (#5663) 2025-04-16 15:38:09 -07:00
Alex Morask
01a08c5814
[PM-19566] Update MSPs to "charge_automatically" with Admin-based opt-out (#5650)
* Update provider to charge automatically with Admin Portal-based opt-out

* Design feedback

* Run dotnet format
2025-04-16 13:36:04 -04:00
Jonas Hendrickx
c182b37347
[PM-17830] Backend changes for admin initiated sponsorships (#5531)
* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Add `Notes` column to `OrganizationSponsorships` table

* Add feature flag to `CreateAdminInitiatedSponsorshipHandler`

* Unit tests for `CreateSponsorshipHandler`

* More tests for `CreateSponsorshipHandler`

* Forgot to add `Notes` column to `OrganizationSponsorships` table in the migration script

* `CreateAdminInitiatedSponsorshipHandler` unit tests

* Fix `CreateSponsorshipCommandTests`

* Encrypt the notes field

* Wrong business logic checking for invalid permissions.

* Wrong business logic checking for invalid permissions.

* Remove design patterns

* duplicate definition in Constants.cs

* Allow rollback

* Fix stored procedures & type

* Fix stored procedures & type

* Properly encapsulating this PR behind its feature flag

* Removed comments

* Updated ValidateSponsorshipCommand to validate admin initiated requirements

---------

Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
Co-authored-by: Conner Turnbull <cturnbull@bitwarden.com>
2025-04-16 11:27:58 -04:00
Matt Gibson
1ac4a08672
Define use sd for decryption feature flag (#5653) 2025-04-15 15:03:06 -04:00
Thomas Avery
c9a42d861c
[PM-17987] Add feature flag (#5554) 2025-04-14 12:48:52 -05:00
bnagawiecki
d553d52c93
revert back to plural key value (#5638) 2025-04-10 16:24:16 -04:00
SmithThe4th
0b50a1819e
Added feature flag (#5632) 2025-04-10 14:55:40 -04:00
Shane Melton
a1016b4df9
Fix feature flag key value (#5636) 2025-04-10 18:28:53 +00:00
Alex Morask
54e7fac4d9
[PM-18770] Convert Organization to Business Unit (#5610)
* [NO LOGIC] Rename MultiOrganizationEnterprise to BusinessUnit

* [Core] Add IMailService.SendBusinessUnitConversionInviteAsync

* [Core] Add BusinessUnitConverter

* [Admin] Add new permission

* [Admin] Add BusinessUnitConverterController

* [Admin] Add Convert to Business Unit button to Organization edit page

* [Api] Add OrganizationBillingController.SetupBusinessUnitAsync action

* [Multi] Propagate provider type to sync response

* [Multi] Put updates behind feature flag

* [Tests] BusinessUnitConverterTests

* Run dotnet format

* Fixing post-main merge compilation failure
2025-04-10 10:06:16 -04:00
Robyn MacCallum
d85807e94f
Add mobile feature flags (#5629)
* Add mobile feature flags

* Update Constants.cs
2025-04-09 12:17:04 -04:00
Andreas Coroiu
19b5431177
[PM-18040] Add new feature flag (#5498) 2025-04-09 09:14:57 +02:00
Jonas Hendrickx
f8e89f1747
[PM-18170] Remove PM-15814-alert-owners-of-reseller-managed-orgs (#5412) 2025-04-09 07:53:43 +02:00
Rui Tomé
65f382ee67
[PM-17616] Remove feature flag for PushSyncOrgKeysOnRevokeRestore (#5616) 2025-04-08 15:26:00 +01:00
Todd Martin
8beefbb417
[PM-19685] Remove email delay feature flag (#5622)
* Remove email delay feature flag

* Fixed reference.

* Removed field from old registration method
2025-04-07 21:36:08 -04:00
bnagawiecki
01daad5942
add feature flag for new desktop cipher forms (#5621) 2025-04-07 10:48:50 -04:00
Rui Tomé
56915ec322
[PM-17474] Remove unused feature flag for device approval request admin notifications (#5615) 2025-04-07 15:22:09 +01:00
Jared McCannon
0d7363c6af
[PM-16811] - SCIM Invite Users Optimizations (#5398)
* WIP changes for Invite User optimization from Scim

* feature flag string

* Added plan validation to PasswordManagerInviteUserValidation. Cleaned up a few things.

* Added Secrets Manager Validations and Tests.

* Added bulk procedure for saving users, collections and groups from inviting. Added test to validate Ef and Sproc

* Created SendOrganizationInvitesCommand and moved some tests from OrgServiceTests. Fixed some tests in org service in relation to moving out SendOrgInviteCommand code.

Added side effects to InviteOrganizationUsersCommand

* First test of new command.

* Added test to verify valid request with a user calls db method and sends the invite

* Added more tests for the updates

* Added integration test around enabling feature and sending invite via scim. Did a bit of refactoring on the SM validation. Fixed couple bugs found.

* Switching over to a local factory.

* created response model and split interface out.

* switched to initialization block

* Moved to private method. Made ScimInvite inherit the single invite base model. Moved create methods to constructors. A few more CR changes included.

* Moved `FromOrganization` mapper method to a constructor

* Updated to use new pricing client. Supressed null dereference errors.

* Fixing bad merge.

* Rename of OrgDto

* undoing this

* Moved into class

* turned into a switch statement

* Separated into separate files.

* Renamed dto and added ctor

* Dto rename. Moved from static methods to ctors

* Removed unused request model

* changes from main

* missed value

* Fixed some compilation errors.

* Fixed some changes.

* Removed comment

* fixed compiler warning.

* Refactored to use new ValidationResult pattern. added mapping method.

* Added throwing of Failure as the previous implementation would have.

* Cleaned up return.

* fixing test.

* Made HasSecretsManagerStandalone return if org doesn't have sm. Added overload for lighter weight model and moved common code to private method.

* Fixed tests.

* Made public method private. added some comments.

* Refactor validation parameter to improve clarity and consistency. Added XML doc

* fixed test

* Removed test only constructor from InviteOrganization

* Separated old and new code explicitly. Moved old code checks down into new code as well. Added error and mapper to Failure<T>

* Variable/Field/Property renames

* Renamed InviteUsersValidation to InviteUsersValidator

* Rename for InvitingUserOrganizationValidation to InvitingUserOrganizationValidator

* PasswordManagerInviteUserValidation to PasswordManagerInviteUserValidator

* Moved XML comment. Added check to see if additional seats are needed.

* Fixing name.

* Updated names.

* Corrected double negation.

* Added groups and collection and users checks.

* Fixed comment. Fixed multiple enumeration. Changed variable name.

* Cleaned up DTO models. Moved some validation steps around. A few quick fixes to address CR concerns. Still need to move a few things yet.

* Fixed naming in subscription update models.

* put back in the request for now.

* Quick rename

* Added provider email addresses as well.

* Removed valid wrapper to pass in to validation methods.

* fix tests

* Code Review changes.

* Removed unused classes

* Using GetPlanOrThrow instead.

* Switches to extension method

* Made Revert and Adjust Sm methods consistent. Corrected string comparer. Added comment for revert sm.

* Fixing compiler complaint.

* Adding XML docs

* Calculated seat addition for SM.

* Fixing compiler complaints.

* Renames for organization.

* Fixing comparison issue.

* Adding error and aligning message.

* fixing name of method.

* Made extension method.

* Rearranged some things. Fixed the tests.

* Added test around validating the revert.

* Added test to validate the provider email is sent if org is managed by a provider.

* Created new errors and removed references in business code to ErrorMessages property. This aligns Invite User code to use Errors instead of ErrorMessages

* Delayed the hasSecretsManagerStandalone call as long as possible.

* Corrected model name. Corrected SM seat calculation. Added test for it.

* Corrected logic and added more tests.
2025-04-07 09:14:10 -05:00
Jonas Hendrickx
b309de141d
[PM-19147] Automatic Tax Improvements (#5545)
* Pm 19147 2 (#5544)

* Pm 19147 2 (#5544)

* Unit tests for tax strategies `GetUpdateOptions`

* Only allow automatic tax flag to be updated for complete subscription updates such as plan changes, not when upgrading additional storage, seats, etc

* unit tests for factory

* Fix build

* Automatic tax for tax estimation

* Fix stub

* Fix stub

* "customer.tax_ids" isn't expanded in some flows.

* Fix SubscriberServiceTests.cs

* BusinessUseAutomaticTaxStrategy > SetUpdateOptions tests

* Fix ProviderBillingServiceTests.cs
2025-04-02 13:47:48 -04:00
Todd Martin
0579fb0e68
[PM-9115] Add feature flag for 2FA persistence (#5583)
* Add new feature flag.

* Clarified name.
2025-03-31 14:27:09 -04:00
Todd Martin
ad05e3f9e1
Complete feature flag grouping by team (#5574)
* Completed grouping of feature flags by team.

* Completed grouping feature flags by team.

* Linting

* Moved flag.

* Moved ssh-key-vault-item to KM.
2025-03-30 16:03:09 -04:00
Todd Martin
c154b6ad9b
Clean up remove-server-version-header feature flag (#5573)
* Removed feature flag.

* Linting.
2025-03-30 12:57:05 -04:00
Rui Tomé
fb0567b45e
[PM-18523] Add SSO external ID visibility feature flag (#5559) 2025-03-27 14:49:38 +00:00
Thomas Rittson
54f4ba945e
[PM-17558] Remove ShortcutDuplicatePatchRequests feature flag (#5551)
* Delete old command and feature flag switch

* Rename vNext command

* Remove feature flag
2025-03-27 10:13:56 -04:00
Bernd Schoolmann
6f227c31e2
Sort km feature flags (#5557) 2025-03-26 15:10:35 +01:00
Bernd Schoolmann
55980e8038
[PM-16603] Add userkey rotation v2 (#5204)
* Implement userkey rotation v2

* Update request models

* Cleanup

* Update tests

* Improve test

* Add tests

* Fix formatting

* Fix test

* Remove whitespace

* Fix namespace

* Enable nullable on models

* Fix build

* Add tests and enable nullable on masterpasswordunlockdatamodel

* Fix test

* Remove rollback

* Add tests

* Make masterpassword hint optional

* Update user query

* Add EF test

* Improve test

* Cleanup

* Set masterpassword hint

* Remove connection close

* Add tests for invalid kdf types

* Update test/Core.Test/KeyManagement/UserKey/RotateUserAccountKeysCommandTests.cs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Fix formatting

* Update src/Api/KeyManagement/Models/Requests/RotateAccountKeysAndDataRequestModel.cs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Update src/Api/Auth/Models/Request/Accounts/MasterPasswordUnlockDataModel.cs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Update src/Api/Auth/Models/Request/Accounts/MasterPasswordUnlockDataModel.cs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Update src/Api/KeyManagement/Models/Requests/AccountKeysRequestModel.cs

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>

* Fix imports

* Fix tests

* Remove null check

* Add rollback

---------

Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
2025-03-25 15:23:01 +01:00
Patrick-Pimentel-Bitwarden
db3151160a
fix(device-approval-persistence): [PM-9112] Device Approval Persistence - Added feature flag. (#5495) 2025-03-19 15:27:51 -04:00
Jason Ng
481df89cf0
[PM-19342] Onboarding Nudges Feature Flag (#5530) 2025-03-19 14:24:12 -04:00
Todd Martin
fc827ed209
feat(set password) [PM-17647] Add set/change password feature flags
* Added flag values

* Added flag values

* Removed extra space

* Linting
2025-03-19 13:49:02 -04:00
Patrick Honkonen
27606e2d33
[PM-3553] Feature flag: Mobile SimpleLogin self host alias generation (#5392) 2025-03-14 13:22:22 -04:00
Alex Morask
7daf6cfad4
[PM-18794] Allow provider payment method (#5500)
* Add PaymentSource to ProviderSubscriptionResponse

* Add UpdatePaymentMethod to ProviderBillingController

* Add GetTaxInformation to ProviderBillingController

* Add VerifyBankAccount to ProviderBillingController

* Add feature flag
2025-03-14 11:33:24 -04:00
Daniel James Smith
2df4076a6b
Add export-attachments feature flag (#5501)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-03-13 16:59:19 +00:00
Vincent Salucci
a5c792dba9
chore: organize vault team feature flag (#5494) 2025-03-12 15:33:52 -05:00
Daniel James Smith
f038e8c5e4
Create desktop-send-ui-refresh feature flag (#5487)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-03-11 10:22:00 -05:00
Daniel James Smith
031e188e82
Remove extension-refresh feature flag (#5410)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2025-03-10 11:53:07 -04:00
cyprain-okeke
88e91734f1
[PM-17594]Remove feature flag self-host license refactor (#5372)
* Remove the feature flag

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>

* Resolve the failing test

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>

---------

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>
Co-authored-by: Conner Turnbull <133619638+cturnbull-bitwarden@users.noreply.github.com>
2025-03-10 11:46:44 +01:00
Jonas Hendrickx
7281dd9b58
[PM-18163] Remove feature flag 'AC-1795_updated-subscription-status-section' (#5411) 2025-03-06 13:19:18 +01:00
Brandon Treston
3c0f723403
remove feature flag (#5462) 2025-03-05 09:42:39 -05:00
Matt Gibson
4a4d256fd9
[PM-16787] Web push enablement for server (#5395)
* Allow for binning of comb IDs by date and value

* Introduce notification hub pool

* Replace device type sharding with comb + range sharding

* Fix proxy interface

* Use enumerable services for multiServiceNotificationHub

* Fix push interface usage

* Fix push notification service dependencies

* Fix push notification keys

* Fixup documentation

* Remove deprecated settings

* Fix tests

* PascalCase method names

* Remove unused request model properties

* Remove unused setting

* Improve DateFromComb precision

* Prefer readonly service enumerable

* Pascal case template holes

* Name TryParse methods TryParse

* Apply suggestions from code review

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* Include preferred push technology in config response

SignalR will be the fallback, but clients should attempt web push first if offered and available to the client.

* Register web push devices

* Working signing and content encrypting

* update to RFC-8291 and RFC-8188

* Notification hub is now working, no need to create our own

* Fix body

* Flip Success Check

* use nifty json attribute

* Remove vapid private key

This is only needed to encrypt data for transmission along webpush -- it's handled by NotificationHub for us

* Add web push feature flag to control config response

* Update src/Core/NotificationHub/NotificationHubConnection.cs

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* Update src/Core/NotificationHub/NotificationHubConnection.cs

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>

* fixup! Update src/Core/NotificationHub/NotificationHubConnection.cs

* Move to platform ownership

* Remove debugging extension

* Remove unused dependencies

* Set json content directly

* Name web push registration data

* Fix FCM type typo

* Determine specific feature flag from set of flags

* Fixup merged tests

* Fixup tests

* Code quality suggestions

* Fix merged tests

* Fix test

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2025-02-26 16:48:51 -05:00
cyprain-okeke
66feebd358
[PM-13127]Breadcrumb event logs (#5430)
* Rename the feature flag to lowercase

* Rename the feature flag to epic

---------

Signed-off-by: Cy Okeke <cokeke@bitwarden.com>
2025-02-25 15:32:19 +00:00
Brandon Treston
c1ac96814e
remove feature flag (#5432) 2025-02-21 13:23:06 -05:00