Décodeur JWT
Tout se passe dans votre navigateur. Vos fichiers et vos données ne quittent jamais votre appareil.
- iat: 2018-01-18T01:30:22.000Z
À propos de cet outil
Un JSON Web Token se compose de trois segments encodés en Base64Url séparés par des points : un en-tête décrivant l’algorithme de signature, un payload de claims, et une signature. L’en-tête et le payload sont seulement encodés, pas chiffrés, donc quiconque possède le jeton peut les lire. Cet outil décode les deux instantanément. Le format est défini dans la RFC 7519.
Que puis-je voir en collant un jeton ?
Collez un jeton pour voir son en-tête et son payload sous forme de JSON mis en forme, accompagnés d’une note en clair pour chaque claim liée au temps. L’en-tête indique généralement l’algorithme de signature (alg) et le type de jeton. Le payload contient les claims que l’émetteur y a placées : les standards comme l’émetteur (iss), le sujet (sub), l’audience (aud), l’expiration (exp), la date d’émission (iat), la date de prise d’effet (nbf), ainsi que toute claim personnalisée ajoutée par votre fournisseur, comme des rôles ou des scopes. Pour exp, iat et nbf, l’outil convertit aussi le timestamp Unix en date lisible et indique si le jeton est expiré ou pas encore valide, ce qui est en général le moyen le plus rapide de comprendre pourquoi une API l’a rejeté. Pour être décodé, un jeton doit comporter exactement trois parties séparées par des points, avec du JSON valide encodé en Base64Url dans les deux premières ; tout le reste est signalé comme un JWT invalide.
Mon jeton est-il envoyé quelque part ?
Non. Le décodage se fait entièrement dans votre navigateur : le jeton est analysé et découpé localement, et rien n’est transmis sur le réseau. Vous pouvez donc coller sans risque de vrais jetons d’accès, y compris ceux d’un système en production, sans craindre qu’ils transitent par un tiers.
Cet outil vérifie-t-il la signature ?
Non, et c’est important à savoir. L’outil se contente de décoder l’en-tête et le payload, ce qui n’est qu’un décodage Base64Url suivi d’une analyse JSON. Il ne vérifie pas la signature, et ne peut donc pas dire si un jeton est authentique ou s’il a été altéré. Décoder montre ce qu’un jeton prétend ; vérifier prouve que ces affirmations sont fiables, et cette vérification doit se faire avec la clé de signature de l’émetteur, en principe sur un serveur ou dans une bibliothèque backend qui y a accès. Si vous débogez un jeton rejeté, le décoder ici permet de voir rapidement si les claims semblent correctes, mais un décodage réussi n’équivaut pas à une signature valide.
Pour comprendre comment les trois segments s’articulent et ce que signifie chaque claim standard, l’introduction aux JWT d’Auth0 est une référence utile en complément de la RFC.