-
Notifications
You must be signed in to change notification settings - Fork 184
Update SCRAM dependency to 3.0 #645
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
Comments
Thanks a lot for letting us know. The stage-based approach to SCRAM auth is gone and now requires upfront knowledge of whether we want to authenticate via password or a key. Also, the changes look non-trivial. |
The changes are trivial at least to upgrade the current dependency, using the key or salted password is optional and only needed if the client (r2dbc) does some cache upfront. What is not so trivial is to allow channel binding, this requires access to the SSLSession to extract the client peer certificate and use it on negotiation. |
These are the changes needed to upgrade the dependency: #646 Channel binding support is not implemented yet since it needs access to the connection and I'm not familiar with the codebase here, but the idea is to do something like this: |
Wow. It seems that I got some wrong class for starters and hence I assumed more complex. Thank you so much. Do you have a pointer for the SSL auth config within Postgres so I can give it a spin? |
Thanks for your support. I added channel binding by extracting the first certificate from the SSL session. On a related note, there are setups like Google Cloud that put SSL terminators in front of a Postgres box. For the time being, we're only extracting SSL certificates with direct SSL connections where the server terminates SSL and not an SSL proxy. |
Feature Request
A new release of the SCRAM dependency is available, update the dependency to version 3.0.
The text was updated successfully, but these errors were encountered: