Informazioni sullo strumento
Quando una chiamata API autenticata fallisce con 401 o 403, la prima domanda è che cosa dice davvero il token: a chi è stato emesso, per quale audience, con quali ruoli e se è scaduto. Questo decoder divide il token, decodifica header e payload in Base64URL e mostra i claim registrati, con exp, iat e nbf convertiti in date e tempi relativi. Segnala anche impostazioni che meritano un test di sicurezza, come alg “none”, chiavi incorporate o URL di chiavi remote. Non verifica la firma: servono il segreto o la chiave pubblica, e i claim decodificati da soli non dimostrano nulla.
Come si usa
- Incolla il token. Un “Bearer ” iniziale copiato da un header Authorization viene rimosso automaticamente.
- Controlla il banner di stato per la scadenza, poi leggi i pannelli di header e payload.
- Usa la tabella dei claim per confrontare iss, aud e sub con ciò che l’API si aspetta.
- Rivedi gli eventuali avvisi, che suggeriscono test negativi da eseguire sulla tua API.
Decoder JWT: domande frequenti
È sicuro incollare qui un token di produzione?
La decodifica avviene interamente nel browser e il token non viene mai inviato da nessuna parte, ma per comodità resta salvato nel local storage di questo browser finché non clicchi Clear. Tratta un token attivo come una password: preferisci gli ambienti di test e cancellalo quando hai finito.
Perché il token qui risulta valido ma l’API lo rifiuta?
La scadenza è solo uno dei controlli. Il server verifica anche firma, issuer, audience, a volte il not-before con una tolleranza sullo sfasamento dell’orologio, e se il token è stato revocato. Un aud o un iss non corrispondenti sono una causa comune di risposte 401 tra un ambiente e l’altro.
Che cosa devo testare se vedo alg “none” o HS256?
Reinvia il token con alg impostato a "none" e la firma rimossa, e poi con il payload modificato ma la firma originale. Un’API corretta deve rifiutarli entrambi. Con HS256 verifica anche che il segreto sia lungo e casuale, perché i segreti HMAC deboli si possono forzare offline a partire da qualsiasi token intercettato.