1
0
mirror of https://github.com/bitwarden/server.git synced 2025-04-24 14:26:38 -05:00

4189 Commits

Author SHA1 Message Date
Vince Grassia
36e8341bc4
Update MsSqlMigratorUtility Docker file 2023-11-15 11:46:40 -05:00
Vince Grassia
0444e9351b
Fix copy command 2023-11-13 16:08:10 -05:00
Vince Grassia
7e083e1173
Fix copy command 2023-11-13 13:43:22 -05:00
Vince Grassia
e7925f63e4
Fix MsSqlMigratorUtility project 2023-11-09 18:23:07 -05:00
Vince Grassia
414272b686
Update platform strings 2023-11-09 18:16:36 -05:00
Vince Grassia
0f2ebde2c5
Test all projects 2023-11-09 17:07:47 -05:00
Vince Grassia
2e2ec50f10
Fix build context 2023-11-09 15:18:36 -05:00
Vince Grassia
a7fa6c943f
Fix image name 2023-11-09 14:20:48 -05:00
Vince Grassia
8da8388678
Full test 2023-11-09 14:10:35 -05:00
Vince Grassia
cd8c16f4a2
Actually use push flag 2023-11-09 13:53:55 -05:00
Vince Grassia
8abe00db65
Fix logic 2023-11-09 13:46:40 -05:00
Vince Grassia
93a9f4c9d7
Try again for Docker build 2023-11-09 13:39:30 -05:00
Vince Grassia
e576528901
Change logic for building 2023-11-09 13:32:03 -05:00
Vince Grassia
e55a205e29
Change build image to SDK 2023-11-09 13:08:21 -05:00
Vince Grassia
2d66c3bbc6
Fix nvm 2023-11-09 13:03:48 -05:00
Vince Grassia
9582503dbc
Fix nvm 2023-11-09 12:59:39 -05:00
Vince Grassia
92179aca6b
Fix nvm 2023-11-09 12:56:19 -05:00
Vince Grassia
9bd152dc5d
Try .bash_rc 2023-11-09 12:51:16 -05:00
Vince Grassia
b415414e5a
NVM not picked up by bash 2023-11-09 12:47:48 -05:00
Vince Grassia
cbb339c2f3
Add curl to Dockerfile 2023-11-09 12:43:21 -05:00
Vince Grassia
f7507b306f
Fix copy source 2023-11-09 12:40:55 -05:00
Vince Grassia
0a016b48e3
Change Docker context 2023-11-09 12:39:00 -05:00
Vince Grassia
e78369e70d
Change logic for testing 2023-11-09 12:35:55 -05:00
Vince Grassia
0244cc9201
Switch Dockerfile to multi-arch build 2023-11-09 12:28:12 -05:00
Matt Bishop
4cf2142b68
Add DbOps for database changes (#3420) 2023-11-09 10:39:04 -05:00
Alex Morask
8f4a1d8639
Retrieve all Stripe invoices (#3431) 2023-11-09 09:05:05 -05:00
Daniel James Smith
95680b434b
Update lockfiles by running dotnet restore --force-evaluate (#3430)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
2023-11-09 14:48:18 +01:00
renovate[bot]
0a2afa020a
[deps] Tools: Update MailKit to v4 (#3173)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-11-09 11:45:09 +01:00
Vince Grassia
6aa763a854
Update 'master' to 'main' (#3427) 2023-11-08 13:08:15 -05:00
Justin Baur
81868dc5a3
Add Explicit Reference to Azure.Identity (#3426) 2023-11-08 12:58:42 -05:00
Thomas Avery
0ca65e3f9d
[SM-919] Add project people access policy management endpoints (#3285)
* Expose access policy discriminators

* Add people policy model and auth handler

* Add unit tests for authz handler

* Add people policies support in repo

* Add new endpoints and request/response models

* Update tests
2023-11-08 11:42:40 -05:00
Andreas Coroiu
35500b197d
fix: broken webauthn controller tests (#3421) 2023-11-08 14:38:54 +01:00
Vince Grassia
f29d3e79a5
Pin gh-actions hashes to master (#3419) 2023-11-07 13:16:12 -07:00
Matt Gibson
b44887d125
Revert "Add checksum to Login Uri models (#3318)" (#3417)
This reverts commit 778340ff16717410db5fe0038a365be839d36e91.
2023-11-07 09:21:54 -08:00
Jared Snider
146d1972e4
PM-4680 - Set Password Request model tweak - remove nullable enable as it introduced incorrect behavior (requiring the optional mp hint - clients sent it in as "" but mobile was getting rejected b/c it sent in null) (#3414) 2023-11-07 12:12:27 -05:00
Matt Gibson
778340ff16
Add checksum to Login Uri models (#3318)
Co-authored-by: Carlos Gonçalves <cgoncalves@bitwarden.com>
2023-11-07 11:44:13 -05:00
Andreas Coroiu
e401fc0983
[PM-4167] Add PRF attestation flow during passkey registration (#3339)
* [PM-4167] feat: add support for `SupportsPrf`

* [PM-4167] feat: add `prfStatus` property

* [PM-4167] feat: add support for storing PRF keys

* [PM-4167] fix: allow credentials to be created without encryption support

* [PM-4167] fix: broken test

* [PM-4167] chore: remove whitespace

* [PM-4167] fix: controller test

* [PM-4167] chore: improve readability of `GetPrfStatus`

* [PM-4167] fix: make prf optional

* [PM-4167] fix: commit missing controller change

* [PM-4167] fix: tests
2023-11-07 16:59:51 +01:00
Michał Chęciński
8256b58e00
[DEVOPS-1646] MsSqlMigratorUtility docker image is not recognizing input flags (#3413) 2023-11-07 10:42:20 +01:00
github-actions[bot]
3f7ff52f0b
Bumped version to 2023.10.2 (#3415)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-11-06 20:21:47 -05:00
tangowithfoxtrot
66c5ccf82d
Vscode devcontainers (#3080)
* add devcontainers for `server`

* run db migrations automatically in dev environment

* remove curl

* remove trailing comma; causes parsing with `jq`

* use existing .env

* add initializeCommand

* use better search string

* restructure common files

* chmod +x scripts

* remove problematic env config scripts

* add mention of var that is needed for devcontainer

* remove ref to deleted script

* Update .devcontainer/community_dev/devcontainer.json

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

* Update .devcontainer/internal_dev/devcontainer.json

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

* use dev image for `6.0.416` SDK

* revert to manual DB migrations

* reuse SQL connection string var

---------

Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
2023-11-06 16:58:32 -05:00
Conner Turnbull
3eb4d547a8
[AC-1708] Teams Starter Plan (#3386)
* Upgraded old 2019 plans to have the same features as 2020 and beyond

* Removed redundant test and moved additional test cases to GetByOrgIdAsync_SmNoneFreePlans_ReturnsNull

* Fixed issue where feature flag wasn't returning correct plans

* Added teams 2010 plan

* Reverted accidental change to StripePaymentService

* Split feature flag logic and added some explanatory comments

* Removed families changes

* Resolved issue where Teams Starter could not sign up for a new org with SM enabled

* Fixed issue with signing up for SM with Teams Starter

* Resolved issue where an active plan could increase their SM seat count to be greater than the base seats in the password manager plan

* Updated unit test to ensure Seats are higher than SmSeats

* Resolved issue where getting plans would return a value that LINQ previously cached when feature flag was in a different state
2023-11-03 22:26:47 +00:00
Conner Turnbull
92ffe5fc20
Remove UseKeyConnector field from Enterprise Plan Upgrade (#3409) 2023-11-03 18:07:53 -04:00
Conner Turnbull
62e99bcaf4
[AC-1578] Fixed issue where legacy plans couldn't sign up for SM (#3400)
* Fixed issue where legacy plans couldn't sign up for SM

* Removed unit test that check to make sure enterprise 2019 couldn't be upgraded to SM
2023-11-03 19:32:30 +00:00
Oscar Hinton
e317833904
[PM-2331] Update renovate with team groupings (#3384) 2023-11-03 17:02:14 +01:00
Alex Morask
629b37b7e2
[PM-4669] Fix SM subscription during free upgrade (#3407)
* Formatting, no logic

* Pass upgrade.UseSecretsManager for free upgrade flow
2023-11-02 15:55:19 -04:00
github-actions[bot]
a66528cf46
Bumped version to 2023.10.1 (#3408)
Co-authored-by: bitwarden-devops-bot <106330231+bitwarden-devops-bot@users.noreply.github.com>
2023-11-02 14:21:55 -04:00
Jared Snider
ee618328c0
Auth/PM-3275 - Changes to support TDE User without MP being able to Set a Password + misc refactoring (#3242)
* PM-3275 - Add new GetMasterPasswordPolicy endpoint which will allow authenticated clients to get an enabled MP org policy if it exists for the purposes of enforcing those policy requirements when setting a password.

* PM-3275 - AccountsController.cs - PostSetPasswordAsync - (1) Convert UserService.setPasswordAsync into new SetInitialMasterPasswordCommand (2) Refactor SetInitialMasterPasswordCommand to only accept post SSO users who are in the invited state
(3) Add TODOs for more cleanup work and more commands

* PM-3275 - Update AccountsControllerTests.cs to add new SetInitialMasterPasswordCommand

* PM-3275 - UserService.cs - Remove non implemented ChangePasswordAsync method

* PM-3275 - The new SetInitialMasterPasswordCommand leveraged the OrganizationService.cs AcceptUserAsync method so while I was in here I converted the AcceptUserAsync methods into a new AcceptOrgUserCommand.cs and turned the private method which accepted an existing org user public for use in the SetInitialMasterPasswordCommand

* PM-3275 - Dotnet format

* PM-3275 - Test SetInitialMasterPasswordCommand

* Dotnet format

* PM-3275 - In process AcceptOrgUserCommandTests.cs

* PM-3275 - Migrate changes from AC-244 / #3199 over into new AcceptOrgUserCommand

* PM-3275 - AcceptOrgUserCommand.cs - create data protector specifically for this command

* PM-3275 - Add TODO for renaming / removing overloading of methods to improve readability / clarity

* PM-3275 - AcceptOrgUserCommand.cs - refactor AcceptOrgUserAsync by OrgId to retrieve orgUser with _organizationUserRepository.GetByOrganizationAsync which gets a single user instead of a collection

* PM-3275 - AcceptOrgUserCommand.cs - update name in TODO for evaluation later

* PM-3275 / PM-1196 - (1) Slightly refactor SsoEmail2faSessionTokenable to provide public static GetTokenLifeTime() method for testing (2) Add missed tests to SsoEmail2faSessionTokenable in preparation for building tests for new OrgUserInviteTokenable.cs

* PM-3275 / PM-1196 - Removing SsoEmail2faSessionTokenable.cs changes + tests as I've handled that separately in a new PR (#3270) for newly created task PM-3925

* PM-3275 - ExpiringTokenable.cs - add clarifying comments to help distinguish between the Valid property and the TokenIsValid method.

* PM-3275 - Create OrgUserInviteTokenable.cs and add tests in OrgUserInviteTokenableTests.cs

* PM-3275 - OrganizationService.cs - Refactor Org User Invite methods to use new OrgUserInviteTokenable instead of manual creation of a token

* PM-3275 - OrgUserInviteTokenable.cs - clarify backwards compat note

* PM-3275 - AcceptOrgUserCommand.cs - Add TODOs + minor name refactor

* PM-3275 - AcceptOrgUserCommand.cs - replace method overloading with more easily readable names.

* PM-3275 - AcceptOrgUserCommand.cs - Update ValidateOrgUserInviteToken to add new token validation while maintaining backwards compatibility for 1 release.

* dotnet format

* PM-3275 - AcceptOrgUserCommand.cs - Move private method below where it is used

* PM-3275 - ServiceCollectionExtensions.cs - Must register IDataProtectorTokenFactory<OrgUserInviteTokenable> for new tokenable

* PM-3275 - OrgUserInviteTokenable needed access to global settings to set its token lifetime to the _globalSettings.OrganizationInviteExpirationHours value.  Creating a factory seemed the most straightforward way to encapsulate the desired creation logic. Unsure if in the correct location in ServiceCollectionExtensions.cs but will figure that out later.

* PM-3275 - In process work of creating AcceptOrgUserCommandTests.cs

* PM-3275 - Remove no longer relevant AcceptOrgUser tests from OrganizationServiceTests.cs

* PM-3275 - Register OrgUserInviteTokenableFactory alongside tokenizer

* PM-3275 - AcceptOrgUserCommandTests.cs - AcceptOrgUserAsync basic test suite completed.

* PM-3275 - AcceptOrgUserCommandTests.cs - tweak test names

* PM-3275 - AcceptOrgUserCommandTests.cs - (1) Remove old tests from OrganizationServiceTests as no longer needed to reference (2) Add summary for SetupCommonAcceptOrgUserMocks (3) Get AcceptOrgUserByToken_OldToken_AcceptsUserAndVerifiesEmail passing

* PM-3275 - Create interface for OrgUserInviteTokenableFactory b/c that's the right thing to do + enables test substitution

* PM-3275 - AcceptOrgUserCommandTests.cs - (1) Start work on AcceptOrgUserByToken_NewToken_AcceptsUserAndVerifiesEmail (2) Create and use SetupCommonAcceptOrgUserByTokenMocks() (3) Create generic FakeDataProtectorTokenFactory for tokenable testing

* PM-3275 - (1) Get AcceptOrgUserByToken_NewToken_AcceptsUserAndVerifiesEmail test passing (2) Move FakeDataProtectorTokenFactory to own file

* PM-3275 - AcceptOrgUserCommandTests.cs - Finish up tests for AcceptOrgUserByTokenAsync

* PM-3275 - Add pseudo section comments

* PM-3275 - Clean up unused params on AcceptOrgUserByToken_EmailMismatch_ThrowsBadRequest test

* PM-3275 - (1) Tests written for AcceptOrgUserByOrgSsoIdAsync (2) Refactor happy path assertions into helper function AssertValidAcceptedOrgUser to reduce code duplication

* PM-3275 - Finish up testing AcceptOrgUserCommandTests.cs by adding tests for AcceptOrgUserByOrgIdAsync

* PM-3275 - Tweaking test naming to ensure consistency.

* PM-3275 - Bugfix - OrgUserInviteTokenableFactory implementation required when declaring singleton service in ServiceCollectionExtensions.cs

* PM-3275 - Resolve failing OrganizationServiceTests.cs

* dotnet format

* PM-3275 - PoliciesController.cs - GetMasterPasswordPolicy bugfix - for orgs without a MP policy, policy comes back as null and we should return notFound in that case.

* PM-3275 - Add PoliciesControllerTests.cs specifically for new GetMasterPasswordPolicy(...) endpoint.

* PM-3275 - dotnet format PoliciesControllerTests.cs

* PM-3275 - PoliciesController.cs - (1) Add tech debt task number (2) Properly flag endpoint as deprecated

* PM-3275 - Add new hasManageResetPasswordPermission property to ProfileResponseModel.cs primarily for sync so that we can condition client side if TDE user obtains elevated permissions

* PM-3275 - Fix AccountsControllerTests.cs

* PM-3275 - OrgUserInviteTokenable.cs - clarify TODO

* PM-3275 - AcceptOrgUserCommand.cs - Refactor token validation to use short circuiting to only run old token validation if new token validation fails.

* PM-3275 - OrgUserInviteTokenable.cs - (1) Add new static methods to centralize validation logic to avoid repetition (2) Add new token validation method so we can avoid having to pass in a full org user (and hitting the db to do so)

* PM-3275 - Realized that the old token validation was used in the PoliciesController.cs (existing user clicks invite link in email and goes to log in) and UserService.cs (user clicks invite link in email and registers for a new acct). Added tech debt item for cleaning up backwards compatibility in future.

* dotnet format

* PM-3275 - (1) AccountsController.cs - Update PostSetPasswordAsync SetPasswordRequestModel to allow null keys for the case where we have a TDE user who obtains elevated permissions - they already have a user public and user encrypted private key saved in the db. (2) AccountsControllerTests.cs - test PostSetPasswordAsync scenarios to ensure changes will work as expected.

* PM-3275 - PR review feedback - (1) set CurrentContext to private (2) Refactor GetProfile to use variables to improve clarity and simplify debugging.

* PM-3275 - SyncController.cs - PR Review Feedback - Set current context as private instead of protected.

* PM-3275 - CurrentContextExtensions.cs - PR Feedback - move parenthesis up from own line.

* PM-3275 - SetInitialMasterPasswordCommandTests.cs - Replace unnecessary variable

* PM-3275 - SetInitialMasterPasswordCommandTests.cs - PR Feedback - Add expected outcome statement to test name

* PM-3275 - Set Initial Password command and tests - PR Feedback changes - (1) Rename orgIdentifier --> OrgSsoIdentifier for clarity (2) Update SetInitialMasterPasswordAsync to not allow null orgSsoId with explicit message saying this vs letting null org trigger invalid organization (3) Add test to cover this new scenario.

* PM-3275 - SetInitialMasterPasswordCommand.cs - Move summary from implementation to interface to better respect standards and the fact that the interface is the more seen piece of code.

* PM-3275 - AcceptOrgUserCommand.cs - Per PR feedback, rename AcceptOrgUserByTokenAsync -> AcceptOrgUserByEmailTokenAsync + replace generic name token with emailToken

* PM-3275 - OrganizationService.cs - Per PR feedback, remove dupe line

* PM-3275 - AcceptOrgUserCommand.cs - Per PR feedback, remove new lines in error messages for consistency.

* PM-3275 - SetInitialMasterPasswordCommand.cs - Per PR feedback, adjust formatting of constructor for improved readability.

* PM-3275 - CurrentContextExtensions.cs - Refactor AnyOrgUserHasManageResetPasswordPermission per PR feedback to remove unnecessary var.

* PM-3275 - AcceptOrgUserCommand.cs - Per PR feedback, remove completed TODO

* PM-3275 - PoliciesController.cs - Per PR feedback, update GetByInvitedUser param to be guid instead of string.

* PM-3275 - OrgUserInviteTokenable.cs - per PR feedback, add tech debt item info.

* PM-3275 - AcceptOrgUserCommand.cs - Per PR feedback, use const purpose from tokenable instead of magic string.

* PM-3275 - Restore non duplicate line to fix tests

* PM-3275 - Per PR feedback, revert all sync controller changes as the ProfileResponseModel.organizations array has org objects which have permissions which have the ManageResetPassword permission.  So, I have the information that I need clientside already to determine if the user has the ManageResetPassword in any org.

* PM-3275 - PoliciesControllerTests.cs - Update imports as the PoliciesController was moved under the admin console team's domain.

* PM-3275 - Resolve issues from merge conflict resolutions to get solution building.

* PM-3275 / PM-4633 - PoliciesController.cs - use orgUserId to look up user instead of orgId. Oops.

* Fix user service tests

* Resolve merge conflict
2023-11-02 08:02:25 -07:00
Alex Morask
cfe9812724
[AC-1772] Check null or whitespace on GatewayCustomerId and BillingEmail (#3398)
* Check null or whitespace on GatewayCustomerId and BillingEmail

* Fixed expiration input
2023-11-02 10:23:28 -04:00
Conner Turnbull
abc7b35a3d
[AC-1783] PayPal IPN Changes (#3404)
* Reverted changes to the domain for the PayPal IPN client, and added more logging

* Removing User-Agent as it wasn't in the IPN client previously
2023-11-02 14:22:54 +00:00
Matt Gibson
a3e440209a
Exclude all properties added in license version (#3401) 2023-11-02 11:25:50 +10:00