[PM-30584] Add support for key-connector-migration setting key#7136
Merged
[PM-30584] Add support for key-connector-migration setting key#7136
Conversation
Contributor
|
New Issues (4)Checkmarx found the following issues in this Pull Request
|
This was referenced Mar 4, 2026
03a81f1 to
23aaddb
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #7136 +/- ##
==========================================
+ Coverage 57.38% 57.40% +0.01%
==========================================
Files 2031 2032 +1
Lines 89283 89311 +28
Branches 7936 7941 +5
==========================================
+ Hits 51237 51265 +28
Misses 36205 36205
Partials 1841 1841 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Thomas-Avery
requested changes
Mar 9, 2026
Contributor
Thomas-Avery
left a comment
There was a problem hiding this comment.
Code changes look good. Would be nice to get some coverage for the user service method.
src/Api/KeyManagement/Controllers/AccountsKeyManagementController.cs
Outdated
Show resolved
Hide resolved
…ler.cs Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com>
…r into km/key-connector-set-key
…r into km/key-connector-set-key
|
quexten
added a commit
to bitwarden/sdk-internal
that referenced
this pull request
Mar 13, 2026
## 🎟️ Tracking <!-- Paste the link to the Jira or GitHub issue or otherwise describe / point to where this change is coming from. --> https://bitwarden.atlassian.net/browse/PM-30584 bitwarden/server#7136 #809 bitwarden/clients#19360 ## 📔 Objective <!-- Describe what the purpose of this PR is, for example what bug you're fixing or new feature you're adding. --> We do not want to keep the same master-key that was used during password derivation, but use a separately sampled key - named "key-connector-key". This means that the conversion flow now requires: - Posting the key to key-connector - Setting the "key" field on the user to "key-connector-key-wrapped-user-key" A new request endpoint is used compared to the previous key-connector-migration endpoint. This new endpoint always requires the key-connector-key-wrapped-user-key in the request body. This will unblock setting the master-key to state during unlock and login, which will improve unlock time, since we can remove double-kdf-derivation. ## 📸 Screenshots <!-- Required for any UI changes; delete if not applicable. Use fixed width images for better display. -->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.






🎟️ Tracking
https://bitwarden.atlassian.net/browse/PM-30584
#7136
bitwarden/sdk-internal#809
bitwarden/clients#19360
📔 Objective
We do not want to keep the same master-key that was used during password derivation, but use a separately sampled key - named "key-connector-key". This means that the conversion flow now requires:
To keep backwards compatibility, we make the request body optional, but if present, the request body contains the key-connector-key-wrapped-user-key. This is subsequently set to the user object.
This will unblock setting the master-key to state during unlock and login, which will improve unlock time, since we can remove double-kdf-derivation.
📸 Screenshots