-
Notifications
You must be signed in to change notification settings - Fork 680
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
Support TLS verification of backend services #813
Comments
Some personal opinion on implementation of this:
I'm working on the implementation of this feature for my own fork of Contour as we require TLS verification for an internal project, but I'd like to get some feedback so that hopefully it can be merged back into the main project eventually. I'd like to extend the ingress route resource to support specifying the configmap for the CA certificate. I'm not sure how open you are to extending the resource, but from a technical standpoint it's not too bad as the apiVersion: contour.heptio.com/v1beta1
kind: IngressRoute
metadata:
name: example
spec:
routes:
- match: /
services:
- name: service
port: 443
tlsVerification:
configMapName: example-ca The main thing I dislike about the above is that if the same CA is being used for every service then there would be a lot of unnecessary repetition. The different levels at which the CA could potentially be specified are:
|
Hey, @robbiemcmichael thanks for the detailed work here! I agree with you on the points you mentioned regarding the effects of putting the CA on each route. It seems like this should maybe be an annotation on the service (since there's no good place to specify this in v1.Service today), but to your point, the I wonder if we could have multiple levels of the Doing this I think would be neat because if you could use the same CA for all the services in the route, you could default this once, but still have the opportunity to further define it if needed. |
Due to the need to release Contour 0.11 to address the security issue in Envoy 1.9.0 and there being no defined implementation path for this issue yet I have moved this issue to the 0.12 milestone. @rbankston please be aware the milestone for this issue has changed. |
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Updates projectcontour#813 This PR adds a draft design for validation of backend services accessed over TLS. Signed-off-by: Dave Cheney <dave@cheney.net>
Contour should support TLS verification of backend services with a CA certificate. This feature is supported in Envoy, we just need to add the
trustedCA
field to the TLSvalidation_context
: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/ssl#enabling-certificate-verificationThe text was updated successfully, but these errors were encountered: