Security: Bearer JWT + JWKS for agent callers (no master secret in the LLM path) #824
Mawyxx
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Pre-submission Checklist
What would you like to share?
Security: Bearer JWT + JWKS for agent callers (no master secret in the LLM path)
Headless agents calling MCP tools usually get one of two defaults — both fail a serious threat model:
Fix shape: agent mints a short-lived RS256 JWT bound to this MCP hostname →
Authorization: Bearer→ resource server verifies locally via JWKS (aud/exp/domain) → authorize bysub. Long-lived mint credential stays on the agent host and never hits the RS.That’s what LIME implements as a machine-only AS: issue the JWT, publish JWKS, keep verify on your side (in-process crypto after JWKS cache; no LIME RTT on the tool hot path).
Static key vs human OAuth vs JWKS passport
subsub= agent id;aud+domain+expon every callMinimal wire
Gate behind env (
offfor local demos,onfor prod). First JWKS fetch is network; warm-cache verify is local.https://lime.pics/api/v1/core/.well-known/jwks.jsonhttps://lime.pics/.well-known/oauth-authorization-serverTokenVerifier,expected_domain)If static keys already match the threat model, ignore. If agent auth is heading into review, this is the pattern that usually survives it.
— https://lime.pics
Relevant Links
No response
All reactions