envoyproxy / envoyproxy/envoy

Supporting "Delegated Identity API" from SPIRE via SDS

Open
#19,756 10 comments 0 reactions 0 assignees View on GitHub
area/tls help wanted
Dominant language
C++
Stars
28.9k
Forks
5.6k
Avg merge
1d 22h
Merged PRs (30d)
430

Description

*Title*: Supporting "Delegated Identity API" from SPIRE via SDS

*Description*:

Hi! Recently, SPIRE added support for a [Delegated Identity API](https://spiffe.io/docs/latest/deploying/spire_agent/#delegated-identity-api), which adds support for a trusted workload to retrieve certificates on-behalf-of other workloads on the host. From looking at the current [XDS integration with SPIRE](https://spiffe.io/docs/latest/microservices/envoy/#tls-certificates) the only way I can see to make delegated identity work with a shared host-level proxy would be to have clusters per `client-identity x destination` and working that backwards through client-aware routes, etc.. While that in theory sounds possible, we don't want to have an online dependency between the configuration synchronized to Envoy and the current state of workloads deployed to a host. We'd also be worried about the cardinality of `client-identity x destination` over time.

Assuming there's not something obvious we're missing, do yall have any thoughts around how Envoy could be extended to suppor this use case? Or somebody I should bug more synchronously about this?

[optional *Relevant Links*:]

[0] [Delegated Identity API](https://spiffe.io/docs/latest/deploying/spire_agent/#delegated-identity-api)
[1] [Example XDS integration with SPIRE as-is](https://spiffe.io/docs/latest/microservices/envoy/#tls-certificates)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.