1. Presentation
TokenGUARD est un inspecteur de jetons JWT gratuit et 100% hors-ligne. Un
JWT (JSON Web Token) est un jeton porteur compose de trois segments encodes en Base64Url :
header.payload.signature. TokenGUARD decode le header et les claims, interprete les champs, signale
les risques et peut verifier la signature.
Aucun jeton n'est transmis sur le reseau : tout le traitement se fait localement dans l'application. C'est un outil de diagnostic pour developpeurs et equipes IAM / M365 / Azure.
2. Installation
Application WPF .NET (Windows). Application autonome, sans dependance externe.
- Ouvrir
TokenGUARD.csprojdans Visual Studio (ciblenet10.0-windows). - Compiler / lancer. Aucun paquet NuGet ni configuration requis.
3. Utilisation
- Collez un jeton dans la zone du haut (le prefixe
Bearerest accepte et retire automatiquement). - Cliquez sur Decoder.
- Exemple insere un jeton de demonstration (HS256, claims facon Entra) et pre-remplit le secret pour tester la verification. Effacer reinitialise tout.
4. Lecture des resultats
Header et Payload
Les deux JSON sont affiches formates. Le header contient l'algorithme (alg), le type
(typ) et l'identifiant de cle (kid). Le payload contient les claims.
Claims interpretes
Chaque claim est liste avec sa valeur et sa signification. Les champs de temps (exp,
nbf, iat) sont convertis en dates lisibles.
Validite temporelle
Resume colore : valide encore ..., expire depuis ... ou pas encore valide.
Analyse de risque
Signale par exemple : alg = none (jeton non signe), HMAC symetrique, absence de exp,
duree de vie excessive, aud / iss manquants, iat dans le futur.
5. Verification de signature
Optionnelle et hors-ligne. Renseignez le materiel de cle puis Verifier la signature :
| Algorithme | Cle a fournir |
|---|---|
| HS256 / HS384 / HS512 | Le secret partage (texte). |
| RS256 / RS384 / RS512, PS* | La cle publique au format PEM (-----BEGIN PUBLIC KEY-----). |
| ES256 / ES384 | La cle publique ECDSA au format PEM. |
Resultat : valide, invalide, ou non pris en charge. La comparaison HMAC est a temps constant.
6. Claims Entra courants
| Claim | Signification |
|---|---|
tid | Tenant Entra |
oid | Identifiant d'objet de l'utilisateur/SP |
upn / preferred_username | Identifiant de connexion |
scp | Scopes delegues (permissions d'un flux utilisateur) |
roles | Roles applicatifs (app-only ou d'app) |
appid / azp | Application appelante |
amr | Methodes d'authentification (ex. pwd, mfa) |
ver | Version du jeton (1.0 / 2.0) |
7. Confidentialite
TokenGUARD ne fait aucune requete reseau. Les jetons colles, secrets et cles restent en memoire locale et ne sont jamais enregistres ni transmis. Fermez l'application efface tout.
8. Depannage
| Symptome | Piste |
|---|---|
| "Format JWT invalide" | Le jeton doit avoir 3 segments separes par des points. 5 segments = JWE chiffre (non decodable sans cle). |
| "Base64Url invalide" | Le jeton a ete tronque au copier-coller ; recopiez-le en entier. |
| Signature HMAC invalide | Mauvais secret, ou le jeton n'est pas signe avec ce secret. |
| Signature RSA/ECDSA invalide | La cle publique ne correspond pas a la cle privee de signature (mauvais kid). |