Décodeur JWT en ligne | Analysez vos tokens JSON Web | Awesome Toolkit

Décodeur JWT

Décodez et inspectez vos tokens JWT (JSON Web Token) côté client. Header, payload, expiration et claims affichés proprement.

Par Marshkalk

Comment utiliser le décodeur JWT

  1. Collez un token JWT (il commence par eyJ) dans la zone de saisie.
  2. Cliquez sur Décoder pour lire l'en-tête, le payload et la signature.
  3. La date d'expiration (claim exp) est affichée dans un format lisible si elle est présente.

Qu'est-ce qu'un JWT ?

Un JSON Web Token (JWT) est un format de token compact et sûr pour les URLs défini dans la RFC 7519. Il se compose de trois parties encodées en Base64url séparées par des points :

  • En-tête: déclare l'algorithme de signature (alg) et le type de token (typ: "JWT")
  • Payload: contient les claims : claims standards (iss, sub, aud, exp, iat) et les claims personnalisés
  • Signature: résultat de la signature de base64url(header).base64url(payload) avec l'algorithme déclaré

Claims JWT courants

ClaimNom completSignification
issIssuerÉmetteur du token (ex. URL du serveur d'auth)
subSubjectSujet du token (généralement l'ID utilisateur)
audAudienceDestinataire prévu (ex. URL de votre API)
expExpirationHorodatage Unix après lequel le token est invalide
iatIssued atHorodatage Unix de création du token
jtiJWT IDIdentifiant unique pour éviter la réutilisation du token

JWT vs cookies de session

Les sessions traditionnelles stockent l'état côté serveur ; un cookie d'ID de session est envoyé à chaque requête. Les JWT stockent l'état dans le token lui-même, les rendant sans état: le serveur n'a pas besoin de consulter la base de données. Cela les rend attractifs pour les microservices et les systèmes distribués, mais un token valide reste valide jusqu'à expiration même après déconnexion.

Note de sécurité

Cet outil décode le token localement dans votre navigateur, il ne valide pas la signature. Les claims décodés ne sont pas fiables sans vérification côté serveur. Ne collez jamais des tokens donnant accès à des systèmes de production dans un outil en ligne.

RGPD et recommandations ANSSI

Les tokens JWT qui contiennent des données permettant d'identifier un utilisateur (ID, email, rôles) sont des données personnelles au sens du RGPD. Deux points de vigilance pour les développeurs :

  • Durée de vie : La CNIL applique le principe de minimisation des données. Utilisez la durée de validité minimale nécessaire. Les access tokens de courte durée (15-60 min) combinés à des refresh tokens sont le modèle recommandé.
  • Données dans le payload : Le payload JWT est encodé en Base64, pas chiffré. Tout proxy, CDN ou log applicatif peut le lire. Ne stockez jamais de données sensibles (numéro de SS, IBAN, mot de passe) dans un payload JWT.

L'ANSSI (guide des mécanismes cryptographiques, révision 2023) recommande RS256 (RSA-PKCS1 + SHA-256) ou ES256 (ECDSA P-256) pour la signature des JWTs en production. Rejetez explicitement côté serveur les tokens avec "alg": "none", accepter des tokens non signés est une vulnérabilité critique connue.