En-tête de décodage
JSONAprès avoir collé le JWT, le contenu analysé sera affiché ici.
Inspectez un en-tête et une charge utile JSON Web Token. Cet outil ne valide pas les signatures et le traitement reste dans votre navigateur.
Collez le JWT ci-dessous pour décoder, inspecter et vérifier instantanément.
En attente de l'entrée du jeton Web JSON.
Après avoir collé le JWT, le contenu analysé sera affiché ici.
Après avoir collé le JWT, le contenu analysé sera affiché ici.
La signature sera affichée ici après le décodage.
Saisissez le secret à utiliser lors de l'émission du JWT. La vérification HS256 est effectuée nativement dans votre navigateur.
Modifiez l'en-tête et la charge utile JSON et utilisez la signature HS256.
Préparez-vous à générer JWT.
Cet ensemble de jetons convient aux tests locaux et au débogage du développement.
JWT est un format de jeton couramment utilisé pour la connexion, la vérification des API et l'autorisation interservices. Il se compose de trois sections : en-tête, charge utile et signature.
Le contenu de la charge utile peut être décodé et lu, et les informations sensibles ne doivent pas être placées dans les revendications JWT.
Cette page prend en charge la vérification et la génération de signature HS256, ce qui permet de vérifier facilement si le jeton de l'environnement de test est créé avec le même secret.
Tous les décodages, encodages et vérifications de signature JWT sont effectués nativement dans le navigateur.
BASE DE CONNAISSANCES SEO JWT
Si vous recherchez « JWT Decoder », « JWT Decoder », « JSON Web Token Parsing », « JWT Verify » ou « JWT Encoder », cela signifie généralement que vous disposez déjà d'un jeton et que vous devez comprendre rapidement son en-tête, sa charge utile, son délai d'expiration, son algorithme de signature et ses revendications. Cette page fournit non seulement des outils de décodage JWT en ligne, mais organise également les connaissances de base de JWT sur lesquelles les développeurs se renseignent fréquemment.
JWT est l'abréviation de JSON Web Token. Il s'agit d'un format de jeton qui utilise JSON pour représenter les informations, puis les convertit en une chaîne simplifiée. Il est souvent utilisé dans les sites Web de séparation front-end et back-end, l'API d'application, la connexion des membres, l'authentification unique SSO, l'autorisation de microservices et l'échange de données entre services.
Le décodage JWT ne nécessite pas de mot de passe car l'en-tête et la charge utile sont uniquement codés en Base64URL et non cryptés. Toute personne qui obtient le jeton peut utiliser le décodeur JWT pour voir le contenu de la charge utile, de sorte que les revendications ne peuvent pas contenir de mots de passe, de clés API ou d'informations personnelles sensibles.
Le cas d’utilisation le plus courant est l’autorisation. Une fois que l'utilisateur s'est connecté avec succès, le serveur d'autorisation émet un JWT. Lorsque le frontal ou l'application appelle ensuite l'API, le jeton est placé dans l'en-tête d'autorisation HTTP, tel que Authorization : Bearer .
JWT est également couramment utilisé pour l’échange d’informations. Lorsque deux systèmes doivent échanger des données vérifiables, les signatures permettent au destinataire de confirmer que les données n'ont pas été modifiées lors de la transmission. Le point de terminaison JWKS est couramment utilisé dans les grands systèmes pour exposer les clés publiques afin que différents services puissent vérifier la source du jeton.
Un JWT standard se compose généralement de trois chaînes Base64URL séparées par des points : Header.Payload.Signature. La première section de Header décrit le type de jeton et l'algorithme de signature, la deuxième section de Payload contient les revendications et la troisième section de Signature est utilisée pour vérifier l'intégrité.
Les revendications enregistrées courantes incluent iss, sub, aud, exp, nbf, iat et jti. Une bonne validation de l'API vérifiera généralement au moins exp, iss et aud.
Le processus typique est le suivant : l'utilisateur se connecte, autorise le serveur à vérifier le mot de passe du compte ou le résultat de la connexion d'un tiers, puis émet un jeton d'accès ; le front-end attache le jeton d'accès à la requête API ; l'API back-end vérifie le jeton et renvoie les données protégées.
JWT n'est pas un remplacement de session universel. Une fois qu'un jeton est émis, il peut généralement être vérifié sans vérifier la base de données avant son expiration. Cependant, la révocation des jetons, les modifications instantanées des autorisations et le traitement de la déconnexion doivent encore être conçus.
La validation JWT fait généralement référence à la vérification si le jeton répond aux règles attendues, par exemple s'il comporte trois segments, s'il peut être décodé, si le JSON est légal, s'il a expiré, si l'émetteur est correct et si le public est conforme à l'API actuelle.
La vérification JWT utilisera l'algorithme et la clé spécifiés pour recalculer la signature, puis la comparera avec la troisième signature du jeton. Être capable de comprendre la charge utile ne signifie pas que le jeton est digne de confiance ; l'API officielle doit subir une vérification du sceau et une vérification des réclamations.
JWT Decode reconvertit les premier et deuxième paragraphes du jeton en JSON, vous permettant de lire l'en-tête et la charge utile. JWT Encode est le processus inverse : préparez l'en-tête JSON et la charge utile JSON, générez la signature et enfin combinez-les en un jeton complet.
Si vous souhaitez simplement voir le contenu de la charge utile, vous n'avez pas besoin de secret ; si vous souhaitez confirmer si le jeton est réellement émis par votre système, vous devez utiliser la clé secrète ou publique correcte pour vérifier la signature. Actuellement, cette page prend en charge HS256.
Lorsque vous utilisez le décodage JWT en ligne, vous devez également vérifier qui a émis le jeton, sur quel système il a été émis, quand il prend effet, quand il expire et si la portée de l'autorisation répond aux exigences de l'API. Le tableau suivant résume les réclamations JWT courantes.
| Réclamation | Signification chinoise | Que vérifier lors du débogage |
|---|---|---|
est | Émetteur, émetteur | Qu'il s'agisse de votre serveur d'autorisation ou d'un fournisseur d'identité de confiance. |
sous | ID de sujet, d'utilisateur ou de principal | Qu'il s'agisse du bon utilisateur, membre, compte de service ou appareil. |
aud | Audience, audience symbolique | S'il faut l'envoyer à l'API actuelle ; les erreurs d'audience provoquent souvent 401. |
exp | Délai d'expiration, délai d'expiration | S'il est expiré ; notez la différence entre l'horodatage Unix et l'affichage du fuseau horaire. |
nbf | Pas avant, moment effectif | Si la durée d'utilisation n'est pas encore atteinte ; L'écart de temps du serveur l'affectera également. |
ça | Publié à, heure d'émission | Correspond-il à l'heure réelle de connexion ou au jeton d'actualisation. |
jti | ID JWT, ID unique du jeton | Qu'il puisse être utilisé pour les listes de révocation, les journaux d'audit ou la protection contre les attaques par relecture. |
portée | Portée du pouvoir | Si les autorisations de lecture, d'écriture, d'administration et autres requises par l'API existent. |
alg dans l'en-tête JWT indiquera au vérificateur quel algorithme doit être utilisé. HS256 est HMAC SHA-256, et l'émission et la vérification utilisent le même ensemble de secrets ; RS256 utilise la signature de clé privée RSA et la vérification de clé publique ; ES256 utilise un algorithme de courbe elliptique.
Le backend doit clairement spécifier la liste des algorithmes autorisés pour empêcher les attaquants d'affecter le processus de vérification en modifiant l'en-tête. Si le JWT provient d'un fournisseur d'identité, récupérez généralement le JWKS ou la clé publique et vérifiez kid, iss, aud, exp.
Les problèmes les plus courants rencontrés lors de l'utilisation de JWT Decoder sont que le jeton n'est pas au format standard à trois segments, que la chaîne Base64URL est copiée de manière incomplète, qu'il y a des espaces blancs avant et après, que la charge utile n'est pas JSON légale ou que le secret de signature est utilisé de manière incorrecte. Si l'API renvoie 401 ou 403, il est recommandé de décoder d'abord le JWT et de confirmer exp, aud et scope.
header.payload.signature à trois segments.Bearer.exp a expiré et si l'heure du serveur est synchronisée.iss et aud sont cohérents avec l'environnement actuel.kid corrects.La session enregistre généralement l'état sur le serveur ou le stockage centralisé, et le navigateur enregistre uniquement l'identifiant de session ; JWT place une partie de l'état dans le jeton, afin que l'API puisse utiliser la signature pour vérifier l'intégrité. SAML est basé sur XML et est couramment utilisé dans le SSO d'entreprise.
| Planifier | Adapté à la situation | Choses à noter |
|---|---|---|
| JWT | Autorisation API, jeton d'accès SSO, microservices | Il est nécessaire de contrôler le délai d’expiration, la vérification du sceau, la révocation et la fuite d’informations sensibles. |
| Séance | Sites Web traditionnels nécessitant une déconnexion immédiate ou un contrôle de statut centralisé | Un magasin de sessions côté serveur est requis et l'expansion interservices nécessite une conception supplémentaire. |
| SAML | Intégration des identités d'entreprise, systèmes SSO existants | Les structures XML sont plus volumineuses et les signatures et paramètres sont généralement plus complexes. |
exp raisonnable et ne rendez pas le jeton d'accès valide pendant une longue période.alg de l'en-tête.iss, aud, nbf, iat avec les demandes d'autorisations nécessaires.Cet outil de décodage JWT en ligne utilise le traitement natif du navigateur : le jeton, le secret, l'en-tête JSON et le Payload JSON que vous collez ne seront pas téléchargés sur le serveur ToolBoy. Néanmoins, le principe de divulgation minimale doit toujours être suivi lorsqu’il s’agit de jetons de production réels.
JWT apparaît souvent dans le processus de débogage de l'API avec JSON, Base64URL, requête URL, horodatage, SHA-256, UUID, regex et d'autres formats de données. Vous pouvez utiliser l'outil de formatage JSON de ToolBoy, l'encodage et décodage Base64, Unix Conversion d'horodatage ou générateur d'UUID.
Pour en savoir plus, veuillez vous référer à l'Introduction au jeton Web JSON de jwt.io et à RFC 7519. Le contenu de cette page a été réorganisé et réécrit en chinois, en se concentrant sur le débogage pratique, le référencement white hat et la confidentialité native.