Decodificatore JWT che ignora la firma
L’indicatore verde di questo strumento guarda un solo campo, exp. Della firma, il terzo pezzo del token, non legge nemmeno un carattere. Il decodificatore JWT divide la stringa ai punti, trasforma i primi due pezzi da Base64URL in testo e li mostra come JSON indentato.
Quando un verde non basta
Lo strumento non verifica la firma. Non ha un campo per la chiave. Il verde dice solo che exp è nel futuro secondo l’orologio del tuo dispositivo. Un token falsificato con un exp valido sembrerebbe identico. Per controllare una firma servono il segreto o la chiave pubblica e una libreria JWT sul server.
Gli altri campi di data, nbf e iat, restano numeri grezzi: secondi dal 1970, senza conversione e senza test. Se manca exp, compare "Nessuna data di fine (firma non verificata)".
Un 401 e tre sospetti
L’API risponde 401. Primo sospetto: l’access token è scaduto. Incollalo e guarda la barra di stato, che indica anche la data. Secondo sospetto: il nuovo identity provider scrive male l’array roles. Terzo: un’app mobile invia il token al backend sbagliato, e confrontare sub ed exp risolve la questione.
Il token resta nella scheda
La decodifica gira in JavaScript sul tuo dispositivo. Scrivere o incollare non invia alcuna richiesta. Lo strumento non salva il token e usa gli appunti solo quando premi un pulsante di copia.
Cinque passaggi dal token ai claim
- Incolla il token nel campo "Token JWT codificato". All’apertura contiene già un esempio: "Carica esempio" lo ripristina e "Cancella" svuota il campo.
- A sinistra trovi l’header, di solito con
algetyp. - A destra trovi il payload con claim come
sub,iatedexp. - La barra di stato sopra i pannelli dice se il token è scaduto e mostra la data nel formato della tua lingua.
- Il pulsante di copia di ogni pannello mette il JSON formattato negli appunti.
Se compare un errore Base64, controlla l’inizio della stringa. Un Bearer iniziale non viene rimosso. Anche i token cifrati (JWE, cinque parti) falliscono, perché il loro payload non è JSON.