coinbase / temporal-ruby

Ruby SDK for Temporal
Apache License 2.0
225 stars 84 forks source link

Is there a way to rotate a client certificate while in use? #259

Open haimgel opened 1 year ago

haimgel commented 1 year ago

We are using mTLS for client authentication, and this works except when the certificate needs to be rotated: I wrote some code to "watch" for certificate changes on disk, create new GRPC::Core::ChannelCredentials and assign it to config.credentials, but I don't see it taking effect in the worker: the worker's poller still errors with GRPC::Unavailable. Are there any workarounds for this?

I have a similar concern for a client-side code, it looks like once the "default" client is created in the Temporal module, there is no easy way to replace the certificate that it uses.