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

gRPC Client Certificate Refresh Interval is not respected #162

Open
joeljeske opened this issue Feb 13, 2023 · 0 comments
Open

gRPC Client Certificate Refresh Interval is not respected #162

joeljeske opened this issue Feb 13, 2023 · 0 comments

Comments

@joeljeske
Copy link
Contributor

As reported in buildbarn/bb-clientd#7

#149 added support for using client and server certificates from files on disk, for both gRPC and HTTP connections. It also added support for refreshing these certificates on an interval.

Specifically For gRPC Client certificates, the rotation is not working as intended. The original certificate is used for the duration of the process.

This is due to the same issue seen here, grpc/grpc-go#5791, where tls.Config.GetClientCertificate is not respected within grpc-go. The solution is documented to use advancedtls.NewServerCreds instead of credentials.NewTLS.

Currently, we cannot easily switch to this alternate API, since it drops support for configuring MinTLS Version as well as TLS CipherSuites and thus would be a breaking change. There is an open ticket grpc/grpc-go#5667 for adding support for configuring CipherSuites with advancedtls, but until then, grpc client certificates will not properly rotate.

@joeljeske joeljeske changed the title gRPC Client Certification Refresh Interval is not respected gRPC Client Certificate Refresh Interval is not respected Feb 13, 2023
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

No branches or pull requests

1 participant