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 secure gRPC channels in ImmudbClient #79

Open
AlphaKhaw opened this issue Feb 4, 2025 · 0 comments · May be fixed by #80
Open

Add support for secure gRPC channels in ImmudbClient #79

AlphaKhaw opened this issue Feb 4, 2025 · 0 comments · May be fixed by #80

Comments

@AlphaKhaw
Copy link

Current Behavior

The current implementation of ImmudbClient only supports insecure gRPC channels (grpc.insecure_channel). This makes it challenging to use ImmuDB in production environments where TLS/SSL is required, such as when connecting through an Application Load Balancer (ALB) or when security policies mandate encrypted connections.

Proposed Solution

Add support for secure gRPC channels by:

  1. Adding an optional ssl_credentials parameter to ImmudbClient.__init__
  2. Creating a secure channel when credentials are provided
  3. Maintaining backward compatibility by defaulting to insecure channel

Current Workaround

Users currently need to manually override the channel after client creation:

credentials = grpc.ssl_channel_credentials()
channel = grpc.secure_channel(target=f"{host}:{port}", credentials=credentials)
client = ImmudbClient(...)
client.channel.close() # Close existing insecure channel
client.channel = channel
client.resetStub()

This workaround is functional but not ideal for production use.

@AlphaKhaw AlphaKhaw linked a pull request Feb 4, 2025 that will close this issue
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 a pull request may close this issue.

1 participant