Dekódovat záhlaví
JSONPo vložení JWT se zde zobrazí analyzovaný obsah.
Zkontrolujte hlavičku a datovou část webového tokenu JSON. Tento nástroj neověřuje podpisy a zpracování zůstává ve vašem prohlížeči.
Vložte JWT níže, abyste mohli okamžitě dekódovat, zkontrolovat a ověřit.
Čekání na vstup JSON Web Token.
Po vložení JWT se zde zobrazí analyzovaný obsah.
Po vložení JWT se zde zobrazí analyzovaný obsah.
Po dekódování se zde zobrazí podpis.
Zadejte tajemství, které se má použít při vydávání JWT. Ověření HS256 se provádí nativně ve vašem prohlížeči.
Upravte JSON záhlaví a datové části a použijte podpis HS256.
Připravte se na generování JWT.
Tato sada tokenů je vhodná pro místní testování a ladění vývoje.
JWT je formát tokenu běžně používaný pro přihlašování, ověřování API a autorizaci mezi službami. Skládá se ze tří sekcí: záhlaví, užitečné zatížení a podpis.
Obsah užitečného obsahu lze dekódovat a číst a citlivé informace by neměly být uváděny do nároků JWT.
Tato stránka podporuje ověřování a generování podpisu HS256, což usnadňuje kontrolu, zda je token testovacího prostředí vytvořen se stejným tajemstvím.
Veškeré dekódování, kódování a ověřování podpisů JWT se provádí nativně v prohlížeči.
BÁZE ZNALOSTÍ JWT SEO
Pokud hledáte „JWT Decoder“, „JWT Decoder“, „JSON Web Token Parsing“, „JWT Verify“ nebo „JWT Encoder“, obvykle to znamená, že již token máte a potřebujete rychle porozumět jeho hlavičce, užitečnému zatížení, době expirace, podpisovému algoritmu a nárokům. Tato stránka poskytuje nejen online dekódovací nástroje JWT, ale také organizuje základní znalosti o JWT, na které se vývojáři často ptají.
JWT je zkratka JSON Web Token. Jedná se o formát tokenu, který používá JSON k reprezentaci informací a poté je převádí na zjednodušený řetězec. Často se používá na front-end a back-end oddělených webech, App API, přihlášení členů, jednotné přihlašování SSO, autorizaci mikroslužeb a výměnu dat mezi službami.
Dekódování JWT nevyžaduje heslo, protože záhlaví a obsah jsou zakódovány pouze pomocí Base64URL, nikoli zašifrovány. Každý, kdo získá token, může použít dekodér JWT k zobrazení obsahu užitečného obsahu, takže nároky nemohou obsahovat hesla, klíče API nebo citlivé osobní údaje.
Nejčastějším případem použití je autorizace. Poté, co se uživatel úspěšně přihlásí, autorizační server vydá JWT. Když front-end nebo aplikace následně zavolá rozhraní API, token se umístí do hlavičky HTTP Authorization, například Authorization: Bearer .
JWT se také běžně používá pro výměnu informací. Když si dva systémy potřebují vyměňovat ověřitelná data, podpisy umožňují přijímajícímu konci potvrdit, že data nebyla během přenosu změněna. Koncový bod JWKS se běžně používá ve velkých systémech k odhalení veřejných klíčů, aby různé služby mohly ověřit zdroj tokenu.
Standardní JWT se obvykle skládá ze tří řetězců Base64URL oddělených tečkami: Header.Payload.Signature. První část záhlaví popisuje typ tokenu a algoritmus podpisu, druhá část datové části obsahuje nároky a třetí část podpisu se používá k ověření integrity.
Mezi běžné registrované nároky patří iss, sub, aud, exp, nb0. data-i18n="auto.012">iat a jti. Dobré ověření API obvykle zkontroluje alespoň exp, iss a aud.
Typický proces je: uživatel se přihlásí, autorizuje server k ověření hesla účtu nebo výsledku přihlášení třetí strany a poté vydá přístupový token; front-end připojí přístupový token k požadavku API; back-end API ověří token a vrátí chráněná data.
JWT není univerzální náhrada relace. Jakmile je token vydán, lze jej obvykle ověřit bez kontroly databáze před vypršením platnosti. Zrušení tokenu, okamžité změny oprávnění a zpracování odhlášení však musí být ještě navrženo.
Validace JWT se obvykle týká kontroly, zda token splňuje očekávaná pravidla, například zda má tři segmenty, zda jej lze dekódovat, zda je JSON legální, zda vypršela jeho platnost, zda je vydavatel správný a zda publikum vyhovuje aktuálnímu API.
Ověření JWT použije zadaný algoritmus a klíč k přepočtu podpisu a poté jej porovná s třetím podpisem tokenu. Schopnost porozumět užitečné zátěži neznamená, že je token důvěryhodný; oficiální API musí projít ověřením pečeti a ověřením nároků.
JWT Decode převede první a druhý odstavec tokenu zpět na JSON, což vám umožní číst záhlaví a obsah. JWT Encode je opačný proces: připravte Header JSON a Payload JSON, vygenerujte podpis a nakonec je zkombinujte do kompletního tokenu.
Pokud chcete pouze vidět obsah užitečného zatížení, nepotřebujete tajemství; pokud chcete potvrdit, zda je token skutečně vydán vaším systémem, musíte k ověření Podpisu použít správný tajný nebo veřejný klíč. V současné době tato stránka podporuje HS256.
Při použití online dekódování JWT byste měli také zkontrolovat, kdo token vydal, kterému systému byl vydán, kdy nabude účinnosti, kdy vyprší platnost a zda rozsah oprávnění splňuje požadavky API. Následující tabulka shrnuje běžné nároky JWT.
| Nárokovat | Čínský význam | Co zkontrolovat při ladění |
|---|---|---|
iss | Emitent, emitent | Ať už je to váš autorizační server nebo důvěryhodný poskytovatel identity. |
sub | Předmět, uživatel nebo hlavní ID | Zda odpovídá správnému uživateli, členovi, servisnímu účtu nebo zařízení. |
aud | Publikum, symbolické publikum | Zda jej odeslat do aktuálního rozhraní API; chyby publika často způsobují 401. |
zk | Doba expirace, doba expirace | Zda vypršela; všimněte si rozdílu v zobrazení časového razítka a časového pásma v Unixu. |
nbf | Ne dříve, efektivní čas | Zda ještě nedosáhla využitelná doba; ovlivní to také odchylka času serveru. |
iat | Vydáno v, čas vydání | Odpovídá skutečnému času přihlášení nebo obnovovacího tokenu. |
jti | JWT ID, jedinečné ID tokenu | Ať už jej lze použít pro seznamy odvolání, protokoly auditu nebo ochranu před útoky při opakovaném přehrávání. |
rozsah | Rozsah pravomoci | Zda existují oprávnění pro čtení, zápis, správce a další oprávnění vyžadovaná rozhraním API. |
alg v záhlaví JWT sdělí ověřovateli, který algoritmus by měl být použit. HS256 je HMAC SHA-256 a jak vydávání, tak ověřování používají stejnou sadu tajemství; RS256 používá podpis soukromého klíče RSA a ověření veřejného klíče; ES256 používá algoritmus eliptické křivky.
Backend by měl jasně specifikovat seznam povolených algoritmů, aby se zabránilo útočníkům ovlivnit proces ověřování úpravou záhlaví. Pokud JWT pochází od poskytovatele identity, obvykle si získejte JWKS nebo veřejný klíč a zaškrtněte kid, iss, aud,
Nejčastější problémy, se kterými se při používání JWT Decoderu setkáváme, jsou, že token není ve standardním třísegmentovém formátu, řetězec Base64URL je zkopírován neúplně, před a za jsou mezery, datová část není legální JSON nebo je nesprávně použito podpisové tajemství. Pokud API vrátí 401 nebo 403, doporučuje se nejprve dekódovat JWT a potvrdit exp, aud a scope.
header.payload.signature.Bearer.exp a zda je synchronizován čas serveru.iss a aud konzistentní s aktuálním prostředím.kid.Session obvykle ukládá stav na serveru nebo centralizovaném úložišti a prohlížeč ukládá pouze ID relace; JWT vloží část stavu do tokenu, takže API může použít podpis k ověření integrity. SAML je založen na XML a běžně se používá v podnikovém jednotném přihlašování.
| Plán | Vhodné pro danou situaci | Věci k poznámce |
|---|---|---|
| JWT | Autorizace API, přístupový token SSO, mikroslužby | Je nutné kontrolovat dobu expirace, ověřování plomby, odvolání a únik citlivých informací. |
| Relace | Tradiční webové stránky, které vyžadují okamžité odhlášení nebo centralizovanou kontrolu stavu | Je vyžadováno úložiště relací na straně serveru a rozšíření mezi službami vyžaduje další návrh. |
| SAML | Integrace podnikové identity, starší systémy jednotného přihlášení | Struktury XML jsou větší a podpisy a nastavení jsou obvykle složitější. |
exp a neprovádějte platnost přístupového tokenu po dlouhou dobu.alg záhlaví.iss, aud, nbf, iat s potřebnými nároky na oprávnění.Tento online dekódovací nástroj JWT používá nativní zpracování prohlížeče: token, tajný klíč, JSON záhlaví a JSON datové části, které vložíte, nebudou nahrány na server ToolBoy. I tak by se při nakládání se skutečnými produkčními tokeny měla stále dodržovat zásada minimálního zveřejnění.
JWT se často objevuje v procesu ladění API spolu s JSON, Base64URL, URL dotazem, časovým razítkem, SHA-256, UUID, regex a dalšími datovými formáty. Můžete použít nástroj pro formátování JSON od ToolBoy, kódování a dekódování Base64, nebo generátor UUID.
Další informace naleznete v jwt.io JSON Web Token Introduction a RFC 7519. Obsah této stránky byl reorganizován a přepsán v čínštině se zaměřením na praktické ladění, white hat SEO a nativní soukromí.