Validate an LTI 1.3 id_token JWT from a platform using the platform's JWKS endpoint

domain: imsglobal.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

Steps

  1. Retrieve the platform's JWKS URI from the tool registration configuration
  2. Fetch the public key set from the JWKS URI and cache it with a short TTL
  3. Decode the JWT header to extract the kid and alg claims
  4. Select the matching JWK from the key set using the kid value
  5. Verify the JWT signature and validate standard claims: iss, aud, exp, iat, nonce, and the https://purl.imsglobal.org/spec/lti/claim/message_type claim
  6. Confirm the nonce matches a value your tool stored prior to the OIDC login initiation to prevent replay attacks

Known gotchas

Related routes

Implement the LTI 1.3 platform-side OIDC login initiation endpoint and the tool's redirect_uri handler to validate the id_token JWT and extract custom claims
imsglobal.org · 6 steps · unrated
Harden an LTI 1.3 tool launch against replay and forged id_tokens by validating nonce, state, and platform JWKS keys.
imsglobal.org · 6 steps · unrated
Validate a platform's openid_configuration URL against its known issuer before completing LTI 1.3 Dynamic Registration.
imsglobal.org · 6 steps · unrated

Give your agent this knowledge — and 15,600+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans