JWT Décodeur/

Vos données sont 100 % privées -- JWT est entièrement décodé et encodé directement sur votre appareil.

JWT
En-tête décodé
Charge utile décodée
Clé publique

Apprenez sur JWT

Toutes les informations qui vous concernent sur JWT et guide étape par étape pour vérifier JWT dans divers cadres.

Qu’est-ce que JWT ?

JWT (JSON Web Token) est un jeton autonome et sans état qui contient des informations dans un format structuré et lisible. Que vous protégez une API ou que vous adoptiez l’authentification basée sur les jetons pour votre application, les JWT sont un outil puissant, car ils :

  • Sans état: Les JWT sont autonomes et ne nécessitent pas d’état côté serveur pour valider. JWT peut assurer l’intégrité des données via des signatures.
  • Compatibilité inter-services: Les JWT peuvent être facilement partagés et vérifiés entre différents services.
  • Extensible: La charge utile d’un JWT peut contenir des déclarations personnalisées, permettant une autorisation flexible et un partage d’informations.
En savoir plus

La structure de JWT

Un JWT typique est divisé en trois parties, chacune encodée en Base64URL et séparée par des points (.) :

  • En-tête - Contient des métadonnées, telles que l’algorithme de signature (par exemple, HS256 ou RS256) et le type du jeton (JWT).
  • Charge utile - Contient les données réelles, comme l’ID utilisateur, le profil utilisateur, le temps d’expiration ou les portées.
  • Signature - Une combinaison hachée de l'en-tête, de la charge utile et sécurisée à l'aide d'une clé secrète. Son but est d'assurer l'intégrité du jeton et de confirmer qu'il n'a pas été modifié.

Cette structure permet aux JWT de fournir un moyen compact et sécurisé de transmettre des informations entre les parties.

jwt_structure

Déclarations de jetons courantes dans JWT

Les déclarations font partie de la charge utile et contiennent les informations clés. Voici les déclarations enregistrées standardisées pour votre référence :

DéclarationsNom completDescription
issÉmetteurL’entité qui a émis le JWT, comme le serveur d’autorisation.
subSujetIdentifie le sujet du JWT, représentant généralement l'utilisateur authentifié.
audAudienceSpécifie quels destinataires peuvent accepter et traiter le jeton. Cela peut être un tableau de valeurs pour plusieurs audiences ou une seule valeur pour un seul destinataire.
expTemps d’ExpirationDéfinit un temps d'expiration sur le jeton après lequel il devient invalide. Cela aide à prévenir les attaques de relecture en limitant la durée de validité d'un jeton.
nbfNon AvantRend un jeton valide seulement après cet horodatage. Utile dans les situations où les horloges ne sont pas accessibles.
iatÉmis ÀDate de création du jeton. Cela peut être utilisé pour déterminer l’âge du jeton.
jtiID JWTUn identifiant unique pour le jeton, utile pour empêcher l’utilisation multiple du même jeton (par exemple, dans les attaques de relecture).

Selon la spécification et la configuration du serveur d'autorisation, des déclarations supplémentaires peuvent être incluses dans la charge utile pour prendre en charge des cas d'utilisation spécifiques. Vous pouvez également ajouter des déclarations personnalisées aux JWT pour répondre à des exigences commerciales uniques.

Précaution: Ne stockez pas d'informations privées ou sensibles dans les déclarations des JWT. Bien que les déclarations des JWT soient encodées (en utilisant Base64URL), elles ne sont pas chiffrées. Cela signifie que toute personne possédant le jeton peut le décoder et voir les déclarations, même si elle ne peut pas le modifier sans invalider la signature. Utilisez le chiffrement ou d'autres méthodes sécurisées pour protéger les données sensibles lorsque cela est nécessaire.

Quand utiliser JWT ?

Les JWT peuvent être particulièrement bénéfiques dans les scénarios suivants :

  1. Architecture de microservices: Pour une authentification sans état entre plusieurs services.
  2. Systèmes de connexion unique (SSO): Permettre l’accès à plusieurs applications avec une seule authentification.
  3. Applications mobiles: Maintenir efficacement les sessions utilisateur à travers des appels API.
  4. Applications à fort trafic: Réduire la charge de la base de données dans des environnements à grand volume.
  5. Partage de ressources cross-origin (CORS): Simplifier l’authentification entre plusieurs domaines.
  6. Architectures serverless: Fournir une authentification sans état où les sessions côté serveur sont difficiles.
En savoir plus

Comment vérifier JWT ?

L’intégrité d’un JWT doit être vérifiée pour s’assurer que son en-tête et sa charge utile n’ont pas été altérés. Voici des exemples étape par étape pour vérifier les JWTs dans des environnements de programmation populaires :

Sujets JWT connexes

Toutes les informations qui vous concernent sur JWT et guide étape par étape pour vérifier JWT dans divers cadres.

Débloquez plus avec Logto Cloud

Simplifiez votre flux de travail et assurez une gestion sécurisée des utilisateurs avec Logto Cloud. Basé sur OpenID Connect (OIDC), il utilise JWT pour fournir un système d’authentification et d’autorisation fiable conçu pour évoluer avec vos besoins.