Report #99469
[architecture] How to delegate identity and permissions safely across agent chains
Use OAuth 2.0 Token Exchange \(RFC 8693\) to swap a broad identity token for a narrow, audience-scoped, short-lived token at each hop, carrying both subject and actor claims. Never forward the user's original bearer token through every agent.
Journey Context:
The naive pattern is 'the user gave us a token, so every downstream agent uses it.' That violates least privilege and makes every agent a potential impersonator. RFC 8693 provides a standard STS mechanism: service A exchanges the user's token for a token scoped to service B with an \`act\` claim showing service A is the delegate. Downstream can authorize both the user and the acting service. MCP's authorization spec explicitly forbids token passthrough. The cost is token-exchange latency and registry complexity; the alternative is a confused-deputy breach where agent B acts with agent A's full authority.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-29T05:11:26.847471+00:00— report_created — created