ToolKitHive
Retour
dev

Décodeur JWT

Décodage et inspection des tokens JSON Web pour consulter l'en-tête, la charge utile et les revendications.

JSON Web Token

Coller un JWT pour décoder son contenu.

Décodificateur JWT — Décoder et inspecter les JSON Web Tokens en ligne gratuitement

Notre outil en ligne gratuit de décodification JWT vous permet de coller n'importe quel JSON Web Token et de voir instantanément son en-tête, sa charge utile et sa signature décodés. Inspectez les revendications du token comme l'émetteur, le sujet, l'expiration et l'audience sans écrire un seul ligne de code. Tout se passe dans votre navigateur — vos tokens ne sont jamais envoyés vers un serveur.

Qu'est-ce qu'un JSON Web Token (JWT) ?

Un JSON Web Token (JWT) est une norme ouverte (RFC 7519) pour transmettre de manière sécurisée des informations entre des parties sous forme d'objet JSON. Les JWT sont souvent utilisés pour l'authentification et l'autorisation dans les applications web. Lorsque vous vous connectez à un site web, le serveur renvoie souvent un JWT que votre navigateur inclut dans les requêtes ultérieures pour prouver votre identité.

Un JWT se compose de trois parties séparées par des points :

  • En-tête — spécifie le type de token et l'algorithme de signature (ex. {"alg": "HS256", "typ": "JWT"})
  • Charge utile — contient les revendications — des déclarations sur l'entité (généralement l'utilisateur) et des données supplémentaires (ex. {"sub": "1234567890", "name": "John Doe", "iat": 1516239022})
  • Signature — utilisée pour vérifier que le token n'a pas été altéré

Chaque partie est encodée en Base64Url, ce qui rend le token compact et sécurisé pour les URLs. Par exemple, un JWT typique ressemble à eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c.

Comment utiliser ce décodificateur JWT

  1. Collez votre JWT dans le champ d'entrée. Le token doit être une chaîne de trois parties encodées en Base64Url séparées par des points.
  2. Voir l'en-tête décodé — l'algorithme, le type de token et d'autres métadonnées apparaissent instantanément.
  3. Voir la charge utile décodée — toutes les revendications sont affichées sous forme de tableau formaté, facile à lire avec des dates lisible.
  4. Vérifier le statut du token — l'outil vérifie automatiquement si le token est expiré en se basant sur la revendication exp.
  5. Copier une section — cliquez sur le bouton de copie à côté de l'en-tête ou de la charge utile pour copier le JSON décodé.

Tout le décodage se fait localement dans votre navigateur à l'aide de la fonction atob native de JavaScript. Aucune donnée n'est transmise sur le réseau.

Fonctionnalités clés

Fonctionnalité Avantage
Décodage instantané L'en-tête et la charge utile sont décodés à mesure que vous tapez
Sortie JSON formatée JSON nettoyé avec coloration syntaxique
Conversion des timestamps Les revendications iat, exp et nbf sont affichées sous forme de dates lisible
Vérification d'expiration Détecte automatiquement et met en évidence les tokens expirés
Descriptions des revendications Les revendications courantes comme sub, iss et aud sont étiquetées
Copie vers le presse-papiers Copiez le JSON de l'en-tête ou de la charge utile avec un simple clic
Aucun transfert de données Tout le décodage se fait localement dans votre navigateur

Référentiel des revendications JWT courantes

Revendication Nom Description
iss Émetteur Identifie le principal qui a émis le token
sub Sujet Identifie le principal qui est le sujet du token
aud Public cible Identifie les destinataires pour lesquels le token est destiné
exp Heure d'expiration Date et heure après lesquelles le token n'est plus valide
nbf Pas avant Date et heure avant lesquelles le token n'est pas valide
iat Émis à Date et heure à laquelle le token a été émis
jti ID JWT Identifiant unique pour le token
name Nom Nom complet de l'utilisateur
email Email Adresse e-mail de l'utilisateur
role Rôle Rôle ou niveau de permission de l'utilisateur
scope Portée Permissions ou portées accordées

Pour encoder des données à inclure dans des URLs, essayez notre encodeur/décodeur URL. Pour le codage Base64, utilisez l'encodeur/décodeur Base64.

Cas d'usage réels

Débogage des problèmes d'authentification

Lorsqu'un utilisateur signale qu'il ne peut pas accéder à une ressource protégée, la première étape est d'inspecter son JWT. Décodifiez le token pour vérifier s'il est expiré, si la revendication sub correspond à l'ID utilisateur attendu ou si la revendication role inclut les permissions nécessaires.

Vérification du contenu du token pendant le développement

Lors de la création ou du test d'une API, vous avez souvent besoin de vérifier que le serveur émet des tokens avec les revendications correctes. Coller le token dans le décodeur vous permet de vérifier rapidement la charge utile sans écrire de script de test.

Inspection des tokens dans les microservices

Dans un environnement microservice, les tokens sont souvent utilisés pour l'authentification inter-service. Le décodeur vous permet de vérifier rapidement l'identité de l'émetteur et les permissions associées.

Audit de sécurité

Les auditeurs de sécurité peuvent utiliser le décodeur pour inspecter les tokens circulant dans l'application et vérifier qu'ils contiennent les informations attendues et qu'aucune donnée sensible n'est exposée.

Gestion des sessions

Les développeurs peuvent utiliser le décodeur pour vérifier l'expiration des tokens et configurer correctement les paramètres de durée de vie des sessions.

Conseils techniques

  • Ne stockez jamais de données sensibles dans un JWT : Les tokens sont souvent transmis dans les en-têtes HTTP, ce qui les rend vulnérables aux attaques de type "man-in-the-middle".
  • Utilisez des algorithmes de signature sécurisés : Privilégiez des algorithmes comme HS256 ou RS256 plutôt que des algorithmes non sécurisés.
  • Limitez la durée de vie des tokens : Configurez des temps d'expiration courts pour minimiser les risques en cas de fuite de token.
  • Utilisez des refresh tokens : Pour les sessions longues, utilisez des tokens de rafraîchissement sécurisés qui ne contiennent pas de données sensibles.
  • Validez les revendications : Vérifiez toujours les revendications comme iss, exp et nbf lors de la validation des tokens.
  • Évitez les tokens trop volumineux : Les tokens trop grands peuvent ralentir les performances des applications.
  • Utilisez des signatures asymétriques : Pour une meilleure sécurité, utilisez des paires de clés publiques/privées pour la signature des tokens.
  • Protégez les clés secrètes : Les clés utilisées pour signer les tokens doivent être stockées de manière sécurisée et ne jamais être exposées.

Questions fréquentes

Qu'est-ce qu'une signature JWT ?
Une signature JWT est une chaîne cryptographique qui permet de vérifier l'intégrité du token et d'authentifier l'émetteur. Elle est générée à l'aide d'un algorithme de signature comme HS256 ou RS256.

Comment vérifier la validité d'un JWT ?
Pour vérifier la validité d'un JWT, vous devez :

  1. Vérifier que la signature est valide en utilisant la clé secrète correspondante.
  2. Vérifier que le token n'est pas expiré (exp > maintenant).
  3. Vérifier que le token n'est pas encore valide (nbf <= maintenant).
  4. Vérifier que l'émetteur (iss) est autorisé.

Quels sont les algorithmes de signature recommandés pour les JWT ?
Les algorithmes de signature recommandés sont :

  • HS256 (HMAC avec SHA-256)
  • RS256 (RSA avec SHA-256)
  • ES256 (ECDSA avec SHA-256)

Les tokens JWT peuvent-ils être utilisés pour l'authentification à deux facteurs ?
Non, les tokens JWT ne sont pas conçus pour l'authentification à deux facteurs. Ils sont principalement utilisés pour l'authentification basée sur des tokens et l'autorisation.

Quel est le format standard des tokens JWT ?
Le format standard des tokens JWT est une chaîne composée de trois parties séparées par des points :

  • En-tête (Header)
  • Charge utile (Payload)
  • Signature (Signature)

Comment sécuriser les tokens JWT ?
Pour sécuriser les tokens JWT :

  • Utilisez des algorithmes de signature sécurisés.
  • Utilisez des clés secrètes fortes.
  • Limitez la durée de vie des tokens.
  • Utilisez des tokens de rafraîchissement sécurisés.
  • Vérifiez toujours les revendications lors de la validation.
  • Protégez les clés secrètes.

Les tokens JWT sont-ils compatibles avec les standards REST ?
Oui, les tokens JWT sont largement utilisés dans les applications REST et sont compatibles avec les standards REST. Ils sont souvent transmis dans l'en-tête Authorization avec le schéma Bearer.

Quel est le principal inconvénient des tokens JWT ?
Le principal inconvénient des tokens JWT est qu'ils sont des objets "stateless", ce qui signifie qu'ils ne peuvent pas être révoqués facilement. Cela rend leur utilisation dans les scénarios nécessitant la révocation des tokens plus complexe.

Les tokens JWT peuvent-ils être utilisés pour stocker des données sensibles ?
Non, les tokens JWT ne devraient pas être utilisés pour stocker des données sensibles. Les données sensibles devraient être stockées dans des bases de données sécurisées et non dans les tokens eux-mêmes.

enptesdejafrruitnltrarzh