Guide

Come leggere un JWT senza considerarlo verificato

Decodifica header e payload di un JSON Web Token, e lascia la firma nella colonna non verificata dove deve stare.

Un JWT compatto è tre pezzi di testo separati da punti: un header, un payload e una firma. Header e payload sono JSON codificato in Base64URL. Chiunque può decodificarli. La firma è ciò che permette a un verificatore di decidere se quei byte sono stati prodotti da chi detiene la chiave.

Cosa mostra il decoder

Il Decoder JWT stampa l’header, il payload e il segmento grezzo della firma. Imposta signature_verified a false su ogni risultato. Non è un fallimento dello strumento. La pagina non ha la chiave di firma e non deve fingere di averne controllata una.

Se l’algoritmo è none, o manca il segmento della firma, la riga di stato dice che il token non è autenticato. Non inviare quel token a un’API aspettandoti che l’API se ne fidi.

I claim sono dati, non un verdetto

exp, iss e aud sono utili da leggere. Vedere un’ora di scadenza non significa che il token sia attuale, perché la firma non è stata controllata e l’orologio di questa pagina non è una decisione di autorizzazione. Usa un verificatore nel sistema che detiene la chiave quando ti serve un sì o un no.

Non incollare un token di accesso di produzione su un computer condiviso. Il decoder gira in locale, ma il dispositivo che usi può comunque ricordare ciò che hai digitato.