tigtools

JWT-dekódoló

Illesszen be egy JWT-t, hogy megtekintse a fejlécét és a claimjeit, valamint hogy lássa, mikor jár le. A dekódolás a böngészőjében történik, és nem ellenőrzi az aláírást.

Böngészőben fut Regisztráció nélkül

A dekódolás nem hitelesítés: bárki létrehozhat tokent tetszőleges tartalommal. Ez az eszköz nem ellenőrzi az aláírást. Csak a böngészőjében fut, de akkor is kerülje, hogy éles, működő tokent illesszen be bármely weboldalra.

Használata

  1. Másoljon ki egy tokent egy Authorization fejlécből, egy cookie-ból vagy a böngésző fejlesztői eszközeiből. A token előtti „Bearer ” szöveget automatikusan eltávolítjuk.
  2. Illessze be a mezőbe. A fejléc és a payload formázott JSON-ként jelenik meg.
  3. Ellenőrizze az állapotsort és a claims táblázatot a kibocsátó, az audience és a lejárati idő helyi idő szerinti megtekintéséhez.
  4. Másolja ki a fejléc vagy a payload JSON-t, ha máshol van rá szüksége.

Hogyan működik

A JSON Web Token (JWT, RFC 7519) szokásos aláírt formája (JWS) három, base64url kódolású, pontokkal elválasztott részből áll. A fejléc megadja, hogy melyik algoritmus írta alá a tokent, például HS256 (HMAC SHA-256-tal) vagy RS256 (RSA). A payload a claim-eket tartalmazza: a felhasználóra és magára a tokenre vonatkozó állításokat. Az aláírás alapján a szerver ellenőrizheti, hogy a fejléc és a payload nem változott-e meg.

A fejléc és a payload csak kódolva van, nem titkosítva. Bárki, akinek tokene van, elolvashatja a tartalmát; ez az eszköz pontosan ezt teszi. Ne tegyen titkos adatokat JWT payloadba.

A dekódolás önmagában semmit nem igazol a tokenről. A kibocsátó kulcsa nélkül senki sem tudja megállapítani, hogy az aláírás valódi-e, ezért az itt látható eredmény alapján soha ne döntse el, hogy megbízhat-e egy tokenben. Az ellenőrzést a szerveren kell elvégezni, karbantartott JWT-könyvtárral, amely ellenőrzi az aláírást, az algoritmust, valamint az exp, nbf, iss és aud értékeket.

A regisztrált claim-eket a táblázat ismerteti. Az exp, nbf és iat NumericDate értékek: az 1970. január 1. 00:00 UTC óta eltelt másodpercek. Az eszköz ezeket az ön időzónája szerinti dátumokra váltja, és összeveti az eszköz órájával, nem számolva azzal a kis tűréssel, amelyet a szerverek gyakran megengednek az óraeltérésekre. Ha az órája pontatlan, az állapot is téves lesz.

Az öt részből álló tokenek titkosított JWT-k (JWE). Az ilyen payload a kulcs nélkül nem dekódolható, ezért az eszköz csak a formátumot jelzi.

Példák

Miért ad vissza az API 401-es hibát?

Dekódolja az alkalmazása által küldött hozzáférési tokent. Ha az állapotsorban az jelenik meg, hogy „Lejárt: …”, az ügyfélnek frissítenie kell a tokent. Ha az aud értéke https://api.example.com, de ön a https://api2.example.com címet hívja, a célközönség nem egyezik.

OpenID Connect ID-token ellenőrzése

A bejelentkezési szolgáltatótól származó ID-token tartalmazza az iss (a szolgáltató), sub (a stabil felhasználói azonosító), aud (az Ön kliensazonosítója), iat és exp mezőket, valamint profiladatokat, például az e-mail-címet és a nevet. A dekódolás megmutatja, mely claim-eket kapja meg ténylegesen az alkalmazása.

Időbélyeg claim olvasása

Egy payload ezt tartalmazza: "exp": 1735689600. A claims táblázat 2025. január 1., 00:00:00 UTC-ként jeleníti meg, a helyi időre átváltva, és azt is mutatja, mennyi idő telt el azóta, vagy mennyi van még hátra.

Gyakori kérdések

Ellenőrzi ez az eszköz a JWT aláírását?

Nem. Csak a fejlécet és a payloadot dekódolja. Az ellenőrzéshez szükség van a titkos kulcsra (HS256 esetén) vagy a kibocsátó nyilvános kulcsára (RS256 és ES256 esetén), és azt a saját szerverén kell elvégezni megbízható könyvtárral.

Biztonságos ide beilleszteni a tokenemet?

A token a böngészőjében dekódolódik, és nem küldjük el sehová. Ennek ellenére egy érvényes token a lejáratáig jelszóként működik, ezért inkább lejárt vagy teszt tokeneket használjon, és soha ne illesszen be éles tokent olyan eszközbe, amelyben nem bízik.

Miért tudja bárki elolvasni a payloadot?

Az aláírt JWT-k base64url kódolást használnak, ami nem titkosítás. Az aláírás a tokent a módosítások ellen védi, nem az olvasás ellen. Ha a tartalomnak titkosnak kell lennie, használjon titkosított JWT-t (JWE), vagy tárolja az adatokat a szerveren.

Mit jelent az „exp”, és milyen mértékegységben van?

Az exp a lejárati idő NumericDate formátumban: egész másodpercek (nem ezredmásodpercek) 1970-01-01 00:00:00 UTC óta. A tokent ettől a pillanattól kezdve el kell utasítani.

Miért kapom ezt: „not valid base64url”?

A token valószínűleg megsérült vagy megváltozott másolás közben, például lemaradtak az utolsó karakterek, a körülötte lévő idézőjelek, vagy URL-kódolás történt (pont helyett %2E). Illessze be a nyers tokent pontosan úgy, ahogy kiadták.

Adatvédelem

A tokent a böngésződben, JavaScript segítségével dekódoljuk. Nem küldjük el semmilyen szerverre, nem tároljuk el, és nem szerepel a statisztikákban. Nincs aláírás-ellenőrzés vagy kulcskeresés, ezért nem történik hálózati kérés.