JWT online decodieren | JSON Web Token analysieren | Awesome Toolkit

JWT Decoder

JWT-Token clientseitig decodieren und inspizieren. Header, Payload, Ablaufzeit und Claims übersichtlich dargestellt.

Von Marshkalk

So verwenden Sie den JWT-Decoder

  1. Fügen Sie einen JWT-Token (beginnt mit eyJ) in das Eingabefeld ein.
  2. Klicken Sie auf Decodieren, um Header, Payload und Signatur zu lesen.
  3. Die Ablaufzeit (Claim exp) wird in einem lesbaren Format angezeigt, sofern vorhanden.

Was ist ein JWT?

Ein JSON Web Token (JWT) ist ein kompaktes, URL-sicheres Token-Format, das in RFC 7519 definiert ist. Es besteht aus drei durch Punkte getrennten Base64url-codierten Teilen:

  • Header: deklariert den Signaturalgorithmus (alg) und den Token-Typ (typ: "JWT")
  • Payload: enthält Claims: Standardclaims (iss, sub, aud, exp, iat) und benutzerdefinierte Claims
  • Signatur: Ergebnis der Signierung von base64url(header).base64url(payload) mit dem deklarierten Algorithmus

Häufige JWT-Claims

ClaimVollnameBedeutung
issIssuerErsteller des Tokens (z.B. Auth-Server-URL)
subSubjectBetreff des Tokens (normalerweise Benutzer-ID)
audAudienceBeabsichtigter Empfänger (z.B. Ihre API-URL)
expExpirationUnix-Timestamp, nach dem der Token ungültig ist
iatIssued atUnix-Timestamp der Token-Erstellung
jtiJWT IDEindeutige ID zur Verhinderung von Token-Replay

JWT vs. Session-Cookies

Traditionelle Sessions speichern den Zustand serverseitig; ein Session-ID-Cookie wird mit jeder Anfrage gesendet. JWTs speichern den Zustand im Token selbst, zustandslos, kein Datenbankaufruf nötig. Attraktiv für Microservices, aber ein gültiger Token bleibt auch nach Abmeldung gültig bis zum Ablauf.

Sicherheitshinweis

Dieses Tool decodiert den Token lokal im Browser, die Signatur wird nicht validiert. Decodierten Payload-Claims ohne serverseitige Signaturprüfung nicht vertrauen. Niemals Tokens, die Zugang zu Produktionssystemen gewähren, in Online-Tools einfügen.

DSGVO und BSI-Empfehlungen

JWT-Tokens, die personenbezogene Daten enthalten (Benutzer-ID, E-Mail, Rollen), unterliegen der DSGVO. Zwei konkrete Konsequenzen für Entwickler:

  • Token-Laufzeit : Das Prinzip der Datensparsamkeit (DSGVO Art. 5) empfiehlt die kürzest mögliche Laufzeit. Kurze Access-Tokens (15-60 Minuten) kombiniert mit Refresh-Tokens sind das empfohlene Muster.
  • Daten im Payload : Der JWT-Payload ist Base64-kodiert, nicht verschlüsselt. Proxies, CDNs und Systemlogs können ihn lesen. Sensible Daten (IBAN, Passwort, Krankenversicherungsnummer) gehören nicht in einen JWT-Payload.

Das BSI empfiehlt in der Technischen Richtlinie TR-02102-1 die Algorithmen RS256 (RSA + SHA-256) oder ES256 (ECDSA P-256) für produktive JWT-Signaturen. Tokens mit "alg": "none" müssen serverseitig explizit abgelehnt werden, das Akzeptieren unsignierter Tokens ist eine bekannte kritische Sicherheitslücke.