JWT-revokation
Hur "loggar ut" en JWT-token innan dess expiry. Hård teknisk problem: JWTs är stateless by design — server kan inte "ta tillbaka" en token utan att introducera state.
Praktiska approaches: (1) kort TTL på access-token (5-15 min) + refresh-token som kan revokeras DB-side, (2) JWT denylist i Redis (kollas vid varje request — bryter stateless-idé), (3) signing-key-rotation (revokera alla tokens som signats med gammal nyckel — bryter user-experience). Klassiskt argumetn: "varför använda JWT om du behöver DB-lookup för revokation? Bara använd session-cookie." Modern best practice: kort-TTL JWT för API + opaque refresh-token för session. OAuth 2.1 + PKCE följer detta mönster.