RFC 7519 — JSON Web Token (JWT)
Spec: datatracker.ietf.org/doc/html/rfc7519Status: Full
RFC 7519 defines the JWT container format used for access tokens and ID tokens.
Implemented
- JWS-signed JWTs — all tokens issued by AuthHero are JWS-signed JWTs.
- Issued-token signing — RS256 (default) for RSA
jwt_signingkeys; ES256, ES384, ES512 for EC keys (P-256, P-384, P-521 respectively). The algorithm is derived from the key material at issue time. - Verified-assertion algorithms — incoming
requestobjects (RFC 9101) andclient_assertionJWTs (RFC 7523) are accepted withRS256/384/512,ES256/384/512, andHS256/384/512.alg=noneis rejected. - Registered claims —
iss,sub,aud,exp,iat,nbf,jtiare set on issued tokens as appropriate. - Custom claims — tenants can inject additional claims via hooks, including the
onFetchUserInfopipeline. - Verification — incoming JWTs are verified against the tenant's JWKS, checking signature,
iss,aud, and expiry.
Partial / not yet implemented
- PS256 / PS384 / PS512 (RSASSA-PSS) — not yet supported for issued or verified tokens; will require an explicit per-key
algfield. - HS256 ID tokens — ID tokens are signed with the tenant's asymmetric
jwt_signingkey; symmetric ID tokens (signed withclient_secret) are not issued. - Encrypted JWTs (JWE) —
id_token_encrypted_response_alganduserinfo_encrypted_response_algare not supported.