Koptekst decoderen
JSONNa het plakken van de JWT wordt de geparseerde inhoud hier weergegeven.
Inspecteer een JSON Web Token-header en payload. Deze tool valideert geen handtekeningen en de verwerking blijft in uw browser plaatsvinden.
Plak de JWT hieronder om deze direct te decoderen, inspecteren en verifiëren.
Wachten op invoer JSON-webtoken.
Na het plakken van de JWT wordt de geparseerde inhoud hier weergegeven.
Na het plakken van de JWT wordt de geparseerde inhoud hier weergegeven.
De handtekening wordt hier na het decoderen weergegeven.
Voer het geheim in dat u wilt gebruiken bij het uitgeven van de JWT. HS256-verificatie wordt standaard in uw browser uitgevoerd.
Bewerk de header en payload JSON en gebruik de HS256-handtekening.
Bereid u voor op het genereren van JWT.
Deze set tokens is geschikt voor lokaal testen en foutopsporing bij de ontwikkeling.
JWT is een tokenformaat dat vaak wordt gebruikt voor inloggen, API-verificatie en autorisatie tussen services. Het bestaat uit drie secties: Header, Payload en Signature.
Payload-inhoud kan worden gedecodeerd en gelezen, en gevoelige informatie mag niet in JWT-claims worden geplaatst.
Deze pagina ondersteunt verificatie en generatie van HS256-handtekeningen, waardoor u eenvoudig kunt controleren of het token van de testomgeving met hetzelfde geheim is gemaakt.
Alle JWT-decodering, codering en handtekeningverificatie worden native in de browser uitgevoerd.
JWT SEO KENNISBASIS
Als u zoekt naar "JWT Decoder", "JWT Decoder", "JSON Web Token Parsing", "JWT Verify" of "JWT Encoder", betekent dit meestal dat u al een token heeft en snel inzicht moet krijgen in de header, payload, vervaltijd, ondertekeningsalgoritme en claims. Deze pagina biedt niet alleen online JWT-decoderingstools, maar organiseert ook de basiskennis van JWT waar ontwikkelaars vaak naar vragen.
JWT is de afkorting van JSON Web Token. Het is een tokenformaat dat JSON gebruikt om informatie weer te geven en deze vervolgens omzet in een vereenvoudigde reeks. Het wordt vaak gebruikt in front-end- en back-end-scheidingswebsites, app-API, ledenlogin, single sign-on SSO, microservice-autorisatie en gegevensuitwisseling tussen services.
Voor JWT-decodering is geen wachtwoord vereist, omdat de header en de payload alleen Base64URL-gecodeerd zijn en niet gecodeerd. Iedereen die het token krijgt, kan de JWT-decoder gebruiken om de inhoud van de payload te bekijken. Claims mogen dus geen wachtwoorden, API-sleutels of gevoelige persoonlijke informatie bevatten.
De meest voorkomende use case is autorisatie. Nadat de gebruiker zich succesvol heeft aangemeld, geeft de autorisatieserver een JWT af. Wanneer de front-end of app vervolgens de API aanroept, wordt het token in de HTTP Authorization header geplaatst, zoals Authorization: Bearer .
JWT wordt ook vaak gebruikt voor informatie-uitwisseling. Wanneer twee systemen verifieerbare gegevens moeten uitwisselen, zorgen handtekeningen ervoor dat de ontvangende kant kan bevestigen dat de gegevens tijdens de verzending niet zijn gewijzigd. Het JWKS-eindpunt wordt vaak gebruikt in grote systemen om openbare sleutels vrij te geven, zodat verschillende services de bron van het token kunnen verifiëren.
Een standaard JWT bestaat doorgaans uit drie door perioden gescheiden Base64URL-tekenreeksen: Header.Payload.Signature. Het eerste gedeelte van Header beschrijft het tokentype en het handtekeningalgoritme, het tweede gedeelte van Payload bevat claims en het derde gedeelte van Signature wordt gebruikt om de integriteit te verifiëren.
Veel voorkomende geregistreerde claims zijn iss, sub, aud, exp, nbf, iat en jti. Goede API-validatie controleert doorgaans minimaal exp, iss en aud.
Het typische proces is: de gebruiker logt in, autoriseert de server om het accountwachtwoord of het inlogresultaat van derden te verifiëren, en geeft vervolgens een toegangstoken uit; de front-end koppelt het toegangstoken aan het API-verzoek; de back-end API verifieert het token en retourneert beschermde gegevens.
JWT is geen universele sessievervanging. Zodra een token is uitgegeven, kan deze doorgaans worden geverifieerd zonder de database te controleren vóór de vervaldatum. Het intrekken van tokens, het onmiddellijk wijzigen van machtigingen en de uitlogverwerking moeten echter nog worden ontworpen.
JWT-validatie heeft meestal betrekking op het controleren of het token aan de verwachte regels voldoet, zoals of het drie segmenten heeft, of het kan worden gedecodeerd, of de JSON legaal is, of deze is verlopen, of de uitgever correct is en of het publiek voldoet aan de huidige API.
JWT-verificatie gebruikt het opgegeven algoritme en de opgegeven sleutel om de handtekening opnieuw te berekenen en vergelijkt deze vervolgens met de derde handtekening van het token. Het kunnen begrijpen van de lading betekent niet dat het token betrouwbaar is; de officiële API moet een zegelverificatie en claimverificatie ondergaan.
JWT Decode converteert de eerste en tweede alinea van het token terug naar JSON, zodat u de header en de payload kunt lezen. JWT Encode is het omgekeerde proces: bereid Header JSON en Payload JSON voor, genereer Signature en combineer ze uiteindelijk tot een compleet token.
Als je alleen de inhoud van de payload wilt zien, heb je geen geheim nodig; Als u wilt bevestigen of het token werkelijk door uw systeem is uitgegeven, moet u de juiste geheime of publieke sleutel gebruiken om de handtekening te verifiëren. Momenteel ondersteunt deze pagina HS256.
Wanneer u online JWT-decodering gebruikt, moet u ook controleren wie het token heeft uitgegeven, aan welk systeem het is uitgegeven, wanneer het van kracht wordt, wanneer het verloopt en of het toestemmingsbereik voldoet aan de API-vereisten. De volgende tabel geeft een overzicht van veel voorkomende JWT-claims.
| Beweren | Chinese betekenis | Wat u moet controleren bij het debuggen |
|---|---|---|
is | Uitgever, uitgevende instelling | Of het nu uw autorisatieserver is of een vertrouwde identiteitsprovider. |
sub | Onderwerp-, gebruikers- of hoofd-ID | Of het nu overeenkomt met de juiste gebruiker, lid, serviceaccount of apparaat. |
hoor | Publiek, symbolisch publiek | Of het naar de huidige API moet worden verzonden; Fouten in het publiek veroorzaken vaak 401. |
exp | Vervaltijd, vervaltijd | Of het verlopen is; let op het verschil in Unix-tijdstempel en tijdzoneweergave. |
nbf | Niet eerder, effectieve tijd | Of de bruikbare tijd nog niet is bereikt; afwijking van de servertijd heeft hier ook invloed op. |
ja | Uitgegeven op, uitgiftetijdstip | Komt dit overeen met het werkelijke tijdstip van inloggen of vernieuwen? |
jti | JWT-ID, unieke token-ID | Of het nu kan worden gebruikt voor intrekkingslijsten, auditlogboeken of bescherming tegen replay-aanvallen. |
reikwijdte | Reikwijdte van het gezag | Of de lees-, schrijf-, beheerders- en andere machtigingen die door de API worden vereist, bestaan. |
alg in JWT Header zal de verifier vertellen welk algoritme moet worden gebruikt. HS256 is HMAC SHA-256, en zowel de uitgifte als de verificatie gebruiken dezelfde reeks geheimen; RS256 maakt gebruik van RSA-privésleutelhandtekening en openbare sleutelverificatie; ES256 maakt gebruik van een elliptisch curve-algoritme.
De backend moet de lijst met toegestane algoritmen duidelijk specificeren om te voorkomen dat aanvallers het verificatieproces beïnvloeden door de header te wijzigen. Als de JWT afkomstig is van een identiteitsprovider, haalt u doorgaans de JWKS of openbare sleutel op en controleert u kid, iss, aud, exp.
De meest voorkomende problemen bij het gebruik van JWT-decoder zijn dat het token niet het standaard drie-segmentformaat heeft, dat de Base64URL-reeks onvolledig wordt gekopieerd, dat er spaties voor en na staan, dat de payload geen legale JSON is, of dat het ondertekeningsgeheim verkeerd wordt gebruikt. Als de API 401 of 403 retourneert, wordt aanbevolen om eerst de JWT te decoderen en exp, aud en scope te bevestigen.
header.payload.signature indeling met drie segmenten heeft.Bearer-schema gebruikt.exp is verlopen en of de servertijd is gesynchroniseerd.iss en aud consistent zijn met de huidige omgeving.kid gebruikt.Sessie slaat meestal de status op in de server of gecentraliseerde opslag, en de browser slaat alleen de sessie-ID op; JWT stopt een deel van de status in het token, zodat de API de handtekening kan gebruiken om de integriteit te verifiëren. SAML is gebaseerd op XML en wordt vaak gebruikt in zakelijke SSO.
| Plannen | Geschikt voor de situatie | Dingen om op te merken |
|---|---|---|
| JWT | API-autorisatie, SSO-toegangstoken, microservices | Het is noodzakelijk om de vervaltijd, de verificatie van de zegels, de intrekking en het lekken van gevoelige informatie te controleren. |
| Sessie | Traditionele websites die onmiddellijk uitloggen of gecentraliseerde statuscontrole vereisen | Er is een sessiearchief aan de serverzijde vereist, en uitbreiding tussen services vereist aanvullend ontwerp. |
| SAML | Enterprise-identiteitsintegratie, oudere SSO-systemen | XML-structuren zijn groter en handtekeningen en instellingen zijn doorgaans complexer. |
exp in en zorg ervoor dat het toegangstoken niet lang geldig is.alg van de header.iss, aud, nbf, iat met de benodigde rechtenclaims.Deze online JWT-decoderingstool maakt gebruik van browser-native verwerking: het token, het geheim, de header-JSON en de Payload-JSON die u plakt, worden niet naar de ToolBoy-server geüpload. Toch moet het principe van minimale openbaarmaking nog steeds worden gevolgd bij het omgaan met echte productietokens.
JWT verschijnt vaak in het API-foutopsporingsproces samen met JSON, Base64URL, URL-query, tijdstempel, SHA-256, UUID, regex en andere gegevensformaten. U kunt de JSON-opmaaktool van ToolBoy gebruiken, Base64-codering en -decodering, Unix-tijdstempelconversie of UUID-generator.
Voor meer informatie raadpleegt u jwt.io's JSON Web Token-introductie en RFC 7519. De inhoud van deze pagina is gereorganiseerd en herschreven in het Chinees, met de nadruk op praktische foutopsporing, white hat SEO en native privacy.