Use 2L-KMS method to encrypt passwords#2735
Merged
Conversation
jgsmith-usds
previously approved these changes
Feb 13, 2019
**Why**: To move entirely away from using UAKs to encrypt passwords This commit introduces some code to the user model to migrate users to the 2L-KMS password digests when they sign in. The UAK code will have to be kept around for as long as we want to be able to decrypt the passwords of users who do not sign back in. The 2L-KMS password verifier is configured to read both 2L-KMS and UAK passwords. There is a switch that can be used to configure it to write 2L-KMS passwords. The default for production is off. This allows us to recycle to deploy this code, and then recycle again with that switch flipped to start writing the 2L-KMS digests when all of the instances in the pool are able to read them.
3caa455 to
6c5bfcc
Compare
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.
Why: To move entirely away from using UAKs to encrypt passwords
This commit introduces some code to the user model to migrate users to
the 2L-KMS password digests when they sign in. The UAK code will have to
be kept around for as long as we want to be able to decrypt the
passwords of users who have not signed back in.
The 2L-KMS password verifier is configured to read both 2L-KMS and UAK
passwords. There is a switch that can be used to configure it to write
2L-KMS passwords. The default for production is off. This allows us to
recycle to deploy this code, and then recycle again with that switch
flipped to start writing the 2L-KMS digests when all of the instances in
the pool are able to read them.