-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
feat: Use self-signed certs for TLS (between components and between k8s and KEDA) #4091
Conversation
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
/run-e2e |
Signed-off-by: Jorge Turrado <[email protected]>
/run-e2e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking really great, just a few nits
Signed-off-by: Jorge Turrado <[email protected]>
Signed-off-by: Jorge Turrado <[email protected]>
/run-e2e |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work!
Signed-off-by: Jorge Turrado [email protected]
This PR adds support for using TLS between KEDA components with client authentication,not just for encrypting the traffic, the client MUST authenticate itself using its own certificate. This reduces the risk of exposing metrics ignoring the cluster RBAC (if the operator grpc server doesn't have authentication, everyone could connect to it and get metric values, ignoring the cluster RBAC required for querying the metrics server).
This PR also register the injected certificates in the metrics server and exposes the tls cert instead of self-generating it on every restart. Now using the injected certificate (from our self-signed cert), we can (and we do) patch the apiservice manifest to include the caBundle, removing
insecureSkipTLSVerify
and trusting in the CAChecklist
Fixes #3931