-
Notifications
You must be signed in to change notification settings - Fork 230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Add support for SCRAM-SHA-256 authentication #282
base: development
Are you sure you want to change the base?
feat: Add support for SCRAM-SHA-256 authentication #282
Conversation
👍 |
Supper happy to have this in! Unfortunately one of the tests you added (thank you for tests!) is failing on MongoDB 4.0 (SHA-256 isn't supported before 4.0):
I had a quick look and noticed the protocol for SHA-256 based SCRAM has changed from SHA-1:
I'm guessing it is down to this? I've not looked in depth so let me know if it's not! Thanks again! Dom |
Yep the server digest is the kicker. Is there a reason for not using external libraries or is using https://github.com/xdg-go/scram acceptable? My current inclination is to remove the internal SCRAM implementation and wrap the xdg-go implementation to fit the Stepper interface. |
223c75e
to
25b6594
Compare
Waiting on PR #285 |
@mhill-anynines PR is merged |
It was merged into master not develop. When the change is cherry picked back into develop then this PR can progress. |
@mhill-anynines the fix has been merged into |
Support more future proof hashing algorithm for SCRAM authentication. Compatible with mongoDB 4.0 and higher.
Removes custom SCRAM implementation replacing it with a wrapper for the existing xdg-go/scram library. Changes the saslNewScram interface to take a new type *scram.Method argument replacing the func () hash.Hash type. Adds a scram.NewMethod function that validates and returns a supported method.
Responsibility for checking if the authentication process is completed it placed in the Step function, hence there should be no need to check the response object done field independently.
6725473
to
049d3f9
Compare
Hi @mhill-anynines, Thanks for the time taken to implement this! Are you still blocked? The PR you refer to was merged into development via #287, is there anything else you need from us to proceed? Thanks, |
Nothing from the project is blocking me. The lack of progress is due a reprioritisation. When I get some time I'll come back to this. If anybody wants to pick this up contact me and I'll pass on what's in my head if needed. |
@mhill-anynines I'm interested in picking this up. I know it's been a while since you've maybe thought of this work, but any info on the vision still lingering would be helpful. @eminano any info on getting development environment setup and running would be appreciated as well. |
@ all: I wish you a Happy New Year 2022! Any news about it? Linked to: |
Hi guys .. Is this likely to be merged anytime soon? |
Support more future proof hashing algorithm for SCRAM authentication.
Compatible with mongoDB 4.0 and higher.