-
Notifications
You must be signed in to change notification settings - Fork 439
Non-disruptive certificate rotation #4891
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
Comments
Hi @guydc thanks for explaining the issue-it's very clear! From my understanding, here's what we need to do:
|
Maybe directly, or indirectly related to this, would be spire support (https://github.com/spiffe/spire). Should this get its own ticket? spire can push updated certificates to the workload as it rotates things. Typically the certs may be replaced each hour, and the ca's updated daily. Would love to be able to use spire with the envoy gateway. |
Hi @kfox1111, I think this would deserve its own issue. Are you interested in using SPIRE only for the Gateway itself (Envoy, Envoy Gateway, Rate Limit server, ... ), or also for communication with the backends? |
This issue has been automatically marked as stale because it has not had activity in the last 30 days. |
can this be closed @guydc ? |
I think that the RL part still doesn't work and we don't have a test confirming the Envoy <> EG part either yet. |
This issue has been automatically marked as stale because it has not had activity in the last 30 days. |
Description:
Currently, we have MTLS connections for:
Envoy Gateway generates client and server certificates for all of the above components and typically provides them as mounted secrets to relevant pods. A job that runs in the helm pre-install and pre-upgrade hooks is responsible for rotation.
It is a common security practice to use short-lived certificates that are rotated frequently. In Envoy Gateway, CA certificates and leaf certificates are handled with the same level of security (storage, access, ... ), and should both be rotated.
To support frequent and non-disruptive rotation, the following is required:
Currently, these requirements are not met:
gateway/internal/crypto/cert_load.go
Line 54 in 2385672
gateway/internal/infrastructure/common/proxy_sds.go
Line 10 in 2385672
gateway/internal/cmd/certgen.go
Line 81 in 2385672
[optional Relevant Links:]
The text was updated successfully, but these errors were encountered: