Each independent application is isolated from each other, sharing a TLS cert/key among them all means we're weakening security - again, the Kubernetes patterns here would mean we need to duplicate the secret data into each applications namespace, allowing a compromise of one to compromise the TLS of all.
There are legitimate reasons to not share a single TLS cert for everything in an environment like Kubernetes.
(I'm nearly certain it's not possible to reference secrets cross namespace when declaring an ingress secret, or mounting a secret)
> the Kubernetes patterns here would mean we need to duplicate the secret data into each applications namespace, allowing a compromise of one to compromise the TLS of all
yeah, this would be wrong indeed.
Is there any requirement for an TLS terminating proxy acting as k8s ingress to actually store the TLS secrets in the same namespace where the requesting ingress object lives?
This is kind of what I expected too. Surely that component of the architecture can (even if the OP's doesn't) be smart enough to handle various certificate scenarios - there must be someone using it with a wildcard certificate, for instance.
Each independent application is isolated from each other, sharing a TLS cert/key among them all means we're weakening security - again, the Kubernetes patterns here would mean we need to duplicate the secret data into each applications namespace, allowing a compromise of one to compromise the TLS of all.
There are legitimate reasons to not share a single TLS cert for everything in an environment like Kubernetes.
(I'm nearly certain it's not possible to reference secrets cross namespace when declaring an ingress secret, or mounting a secret)