Aller au contenu

Inspecteur JWT

Allez plus loin que le décodage : chaque paramètre d’en-tête et chaque claim est expliqué, avec des alertes pratiques sur la construction du jeton.

Traité localement dans votre navigateur

Le jeton est décodé localement et n’est envoyé nulle part. Le décodage ne vérifie pas la signature.0 caractères · 0 lignes
Le résultat apparaîtra ici.

Qu'est-ce que Inspecteur JWT ?

L’inspecteur lit l’en-tête et la charge utile et les présente dans un tableau qui distingue les claims enregistrés (iss, sub, aud, exp, nbf, iat, jti), les claims courants d’OpenID et OAuth, les paramètres d’en-tête et vos claims personnalisés, chacun avec une courte description.

Il applique ensuite une liste de contrôles : algorithme « none » ou symétrique HS256/384/512 face à l’asymétrique RS, PS, ES et EdDSA, exp manquant, durée de vie très longue, exp déjà dépassé, nbf dans le futur, iat en avance sur votre horloge, kid à traiter comme une entrée non fiable, et en-têtes de source de clé comme jku, x5u, jwk et x5c qu’un vérificateur ne doit jamais suivre aveuglément. Il indique aussi la taille en octets de chaque segment.

Comment ça marche ?

  1. Collez le jeton ; le préfixe « Bearer » et les espaces sont tolérés.
  2. Lisez le bandeau d’état : l’analyse n’est pas une vérification et la signature n’est jamais contrôlée.
  3. Passez en revue les avertissements, puis le tableau des claims et les lignes de résumé.
  4. Comparez avec la configuration de votre vérificateur : algorithme imposé, émetteur et audience attendus, durée de vie maximale.

Cas d'usage courants

  • Examiner les jetons d’un nouveau fournisseur d’identité avant de câbler la validation.
  • Repérer les configurations faibles : pas d’expiration, durée d’un an ou alg none en environnement de test.
  • Comprendre le sens de chaque claim inhabituel d’un jeton d’identité OIDC.
  • Préparer une checklist de revue de sécurité pour une API qui accepte des jetons porteur.

Exemples

Essayez cette saisie dans l'outil ci-dessus :

Entrée
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyLTEyMzQiLCJuYW1lIjoiRGVtbyBVc2VyIiwiaXNzIjoiaHR0cHM6Ly9hdXRoLmV4YW1wbGUudGVzdCIsImF1ZCI6ImRlbW8tYXBwIiwiaWF0IjoxNzAwMDAwMDAwLCJuYmYiOjE3MDAwMDAwMDAsImV4cCI6MTkwMDAwMDAwMCwianRpIjoiZGVtby0wMDAxIn0.ZHVtbXktc2lnbmF0dXJlLW5vdC1hLXJlYWwtaG1hYw
Sortie
Algorithme: HS256 — HMAC (secret partagé)
Taille du jeton: 291 caractères
En-tête / charge utile / signature: 27 / 158 / 31 octets
Revendications dans la charge utile: 8
Durée de vie (iat → exp): 2314 j 19 h 33 min
Revendications de temps maintenant: dans sa fenêtre de validité temporelle
Signature (brute, NON vérifiée): ZHVtbXktc2lnbmF0dXJlLW5vdC1hLXJlYWwtaG1hYw (31 octets)

Confidentialité

Inspecteur JWT s'exécute entièrement dans votre navigateur. Le texte ou les fichiers que vous fournissez sont traités sur votre appareil et ne sont ni envoyés, ni journalisés, ni stockés sur nos serveurs.

Limites

Les constats sont des heuristiques fondées sur le contenu du jeton lui-même. Un jeton peut réussir tous les contrôles ici et rester falsifié, car la signature n’est pas vérifiée. Aucune devinette de clé ni aucun craquage n’est proposé.

Questions fréquentes

Que contrôle l’inspecteur que le décodeur ne fait pas ?

Le décodeur affiche le contenu brut. L’inspecteur explique chaque claim, évalue la famille d’algorithme, la durée de vie et la cohérence des dates, et signale les en-têtes risqués comme jku, x5u et jwk.

Pourquoi alg « none » pose-t-il problème ?

Cela signifie que le jeton n’a pas de signature. Un vérificateur qui l’accepte laisse n’importe qui fabriquer un jeton avec les claims de son choix. Un vrai vérificateur impose les algorithmes autorisés et rejette none.

La charge utile doit-elle contenir des données personnelles ?

Évitez-le si possible. La charge utile est seulement encodée : quiconque obtient le jeton peut lire tous les claims. Gardez des jetons courts et minimalistes.

Plus d'outils dans Outils développeur →