-
Notifications
You must be signed in to change notification settings - Fork 488
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
Istio - SPIRE Integration : Istio can't fetch file-cert based TLS certificates from spire agent SDS socket #5727
Comments
Hello @sridharjprakasam, Could this be related to #5687 and the recent feature change where the default value of the VERIFY_CERTIFICATE_AT_CLIENT flag has been set to true? |
@MarcosDY The issue described here is that istio proxy (as a ingress-gateway) couldn't fetch the TLS certificates for TLS termination at gateway level, when integrated with spire. Istio is attempting to fetch a
Moreover the same issue is there in Istio 1.19.7 while integrating with SPIRE |
This is not a SPIRE issue, it's just an Istio/Envoy config snafu. |
FWIW this will be fixed Istio-side via istio/istio#54725 by separating the file-based SDS config from the workload-CA/SPIRE based SDS config. |
Thank you @bleggett 🙏 Can you help us understand the impact? Are there now Istio releases that are incompatible with SPIRE? |
The tl;dr is that
that would break prior to istio/istio#54725 That is what this issue was raised for. I suspect #5687 is more or less the same issue as this, and the PR will fix both. |
Istio version: 1.23.12
Spire Version : 1.8.7
Platform : RHEL 8
**Issue Description
When SPIRE is configured to provide workload identity it replaces the default sds-cluster. However for ingress gateway, the source of the TLS certs is also moved to sds-cluster. The default SDS client, when SPIRE workload api socket is not mount, understand the specific resource name file-cert:~. However, once it is replaced by SPIRE, the above resource name is passed onto the spire-agent, which is not able to resolve it.**
This breaks the file based TLS SIMPLE mode configuration when SPIRE is the workload identity issuer.
Gateway TLS
Envoy Config Dump - Downstream TLS context
Error in ingress gateway logs, istio tries to make use of spire agent socket to fetch the file-cert based certificate
warning envoy config external/envoy/source/common/config/grpc_stream.h:153 StreamSecrets gRPC config stream to sds-grpc closed: 3, workload is not authorized for the requested identities ["file-cert:/etc/ingress-certs/tls.crt~/etc/ingress-certs/tls.key"] thread=18
Is it possible for spire agent to recognise that the request is for file-cert ( local path based cert ) and not an SVID for workload and deliver the requested file cert from spire-agent's local path
Related Istio Issue : istio/istio#54365
The text was updated successfully, but these errors were encountered: