pathwaycom / pathwaycom/pathway
Support for client certificate authentication in PostgreSQL connectors
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 62.3k
- Forks
- 1.7k
- PR merge metrics
- No merged PRs in 30d
Description
Is your feature request related to a problem? Please describe.
Add support for mutual TLS authentication parameters in pw.io.postgres.write, dict to enable client certificate-based authentication.
Describe the solution you'd like
The parameters to implement are:
- sslcert - path to the client certificate file
- sslkey - path to the client private key file
- sslpassword - password for decrypting the private key (if encrypted)
These parameters follow the standard libpq connection parameter specification and should work analogously to other PostgreSQL drivers and clients.
They must be parsed from postgres_settings parameter.
Describe alternatives you've considered
The connector currently supports:
sslmode(all six standard modes)sslrootcert(server certificate validation)
So the implementation is not an absolute urgency, still the current set is not enough.
Additional context
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the pw.io.postgres.write entry point and inspect how the postgres_settings parameter currently handles sslmode and sslrootcert. Add support for sslcert, sslkey, and sslpassword according to the PostgreSQL libpq SSL documentation, then verify that all three values are parsed for client certificate authentication.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- postgresql, python
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100