ref(security): Add TLS support for etl-api #508
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces a new mechanism for TLS authentication between the etl-api and the source database. It adds a shared certificate cache that is also used during replicator creation.
The cache stores the trusted root certificate and has a TTL of one day, primarily to avoid repeated queries to the Kubernetes control plane for the same certificate.
The TTL also serves as a recovery mechanism. In the event that the certificate changes and a service restart is not immediately possible, the cache will eventually expire and allow the system to pick up the updated certificate automatically.