JWT Debugger

Ponoř se do hlaviček a claims tokenů. Zpracováno lokálně pro analýzu bez úniku dat.

Co to dělá

Ukáže, co je uvnitř JSON Web Tokenu.

K čemu to použít

Kontrola claimů, expirace, issuera a struktury tokenu při debugování.

Na co to není

Rozhodnutí, že token je důvěryhodný jen proto, že jde přečíst.

Pochopit nástroj

Nejdřív mentální model, pak důvěra ve výstup.

Krátké a praktické vysvětlení, které ukáže k čemu nástroj je, jak funguje a kde se lidé nejčastěji pletou.

Jednoduše řečeno

JWT je kompaktní formát tokenu pro přenos strukturovaných dat, jako je ID uživatele, role nebo čas expirace. Tento nástroj vám pomůže tato data lokálně přečíst.

Jak to funguje

JWT má obvykle tři části: header, payload a signature. První dvě části jsou Base64URL zakódované JSONy, takže je lze snadno rozbalit. Opravdovou důvěru ale dává až podpis.

JWT jsou tři části oddělené tečkami

Čitelný obsah je v headeru a payloadu. Důvěra vzniká až správným ověřením podpisu.

Kde se hodí

  • Kontrola, kdy token expiruje při debugování aplikace.
  • Prohlížení claimů jako issuer, subject, audience nebo role.
  • Zjišťování, proč backend token přijal nebo odmítl.

Častý omyl

Dekódování JWT ukáže jen to, co token tvrdí, ne zda je pravý. I podvržený token se může dekódovat úplně bez problému.

Pozadí

Historie / zajímavost

JWT se rozšířilo, protože je malé a snadno přenositelné mezi službami. Právě tato praktičnost ale často vede k přehnané důvěře: obsah je čitelný, a tak působí důvěryhodněji, než ve skutečnosti je.

Bezpečnostní poznámka

Skutečné ověření vyžaduje kontrolu podpisu správným tajemstvím nebo veřejným klíčem a také validaci claimů jako exp, aud a iss v kontextu vaší aplikace.

Jít více do hloubky

Header vs payload

Header říká, jak je token podepsaný. Payload nese claimy. Obě části jsou po dekódování čitelné a ani jedna sama o sobě neznamená důvěru.

Co je potřeba k ověření podpisu

Pro ověření JWT potřebujete očekávaný algoritmus, správné tajemství nebo veřejný klíč a logiku validace claimů odpovídající vaší aplikaci.