Skip to content
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

Add support for auth_query based authentication to mirrored servers #896

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

joshcurtis
Copy link

The change itself is fairly simple, just piping the auth_hash object to the mirror server pool.

The test was created by putting aping existing tests in mirror_spec.rb and auth_query_spec.rb.

I also updated the auth of the mirror instance to md5, since the connection failed silently when scram-sha-256 was used.

@@ -24,7 +24,7 @@ services:
POSTGRES_USER: postgres
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_INITDB_ARGS: --auth-local=scram-sha-256 --auth-host=scram-sha-256 --auth=scram-sha-256
POSTGRES_INITDB_ARGS: --auth-local=md5 --auth-host=md5 --auth=md5
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had a problem where the connection silently failed if scram authentication was used. I tried and failed to reproduce by playing around with some of the tests in auth_query_spec.rb, so it might be a problem unique to the config I was using?

Auth query not working with scram authentication might be a known issue? I ran across some problems that might be similar in the discord. I'm a bit fuzzy on how this all works so it could be unrelated

message from postgresml discord:

I tried SCRAM-SHA-256 in password encoding, the auth_query failed to work.
pgcat failed with error below"2023-09-07T09:01:37.352504Z ERROR pgcat: 
Pool error: ServerAuthError("SASL auth required and no password specified. 
Auth passthrough (auth_query) method is currently unsupported for SASL auth", ServerIdentifier { username: "pgcatdb", database: "pgcatdb" }) ".  
SCRAM is required for FIPS. 

Any planning to support SCRAM for auth_query?

@joshcurtis joshcurtis changed the title Add support for auth_hash authentication to mirrored servers Add support for auth_query based authentication to mirrored servers Dec 31, 2024
The change itself is fairly simple, just piping the auth_hash
object  to the mirror server pool.

The test was created by putting aping existing tests in mirror_spec.rb
and auth_query_spec.rb.

I also updated the auth of the mirror instance to md5, since the
connection failed silently when scram-sha-256 was used.
@joshcurtis joshcurtis force-pushed the add_auth_hash_support_in_mirrors branch from 7d1cab2 to a8b5501 Compare December 31, 2024 20:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant