Ein vollständiger Leitfaden zu unserem JSON Web Token (JWT)-Decoder
Willkommen bei unserem sicheren, clientseitigen JWT-Decoder. Dieses kostenlose Online-Tool ist ein unverzichtbares Hilfsmittel für jeden Entwickler, Sicherheitsexperten oder Einzelpersonen, die mit modernen Authentifizierungssystemen arbeiten. Es ermöglicht Ihnen, JWTs (JSON Web Tokens) sofort zu dekodieren und deren Inhalt in einem sauberen, für Menschen lesbaren Format zu inspizieren. Fügen Sie einfach Ihren Token in das Textfeld ein, und unser Tool analysiert den Header und die Payload und zeigt sie als formatiertes JSON an.
Das wichtigste Merkmal dieses Online-JWT-Decoders ist seine Sicherheit. Alle Dekodierungs- und Verarbeitungsschritte erfolgen zu 100 % in Ihrem Browser. Ihre Token werden niemals an unseren Server gesendet. Dieser clientseitige Ansatz stellt sicher, dass Ihre sensiblen Informationen wie Authentifizierungs-Token, API-Schlüssel oder private Benutzerdaten völlig privat bleiben. Sie können jeden JWT-Token mit vollem Vertrauen debuggen.
Was ist ein JSON Web Token (JWT)?
Ein JSON Web Token (JWT) ist ein kompakter, URL-sicherer offener Standard (definiert durch RFC 7519), der verwendet wird, um Informationen zwischen Parteien sicher als JSON-Objekt zu übertragen. Da diese Informationen digital signiert sind, können sie überprüft werden und sind vertrauenswürdig. JWTs sind zustandslos und in sich geschlossen, was bedeutet, dass alle zur Authentifizierung eines Benutzers erforderlichen Informationen im Token selbst enthalten sind. Dies macht sie zu einer äußerst beliebten Wahl für moderne Web- und Mobilanwendungen, insbesondere für die Authentifizierung und den Informationsaustausch.
Sie können ein JWT leicht an seiner dreiteiligen Struktur erkennen, wobei jeder Teil durch einen Punkt (.) getrennt ist: header.payload.signature.
Die drei Teile eines JWT erklärt
Wenn Sie unseren JWT-Decoder verwenden, sehen Sie die dekodierten Versionen der ersten beiden Teile des Tokens.
1. Der Header (Metadaten)
Der erste Teil des Tokens ist der JWT-Header. Er ist ein JSON-Objekt, das Base64Url-kodiert ist. Er besteht in der Regel aus zwei Schlüssel-Wert-Paaren:
- typ (Typ): Dieser gibt den Typ des Tokens an, der fast immer "JWT" ist.
- alg (Algorithmus): Dieser gibt den Signaturalgorithmus an, der zur Erstellung der Signatur verwendet wurde. Gängige Algorithmen sind HS256 (HMAC mit SHA-256, ein symmetrischer Algorithmus) und RS256 (RSA mit SHA-256, ein asymmetrischer Algorithmus).
2. Die Payload (Claims)
Der zweite Teil des Tokens ist die JWT-Payload. Dieser Teil ist ebenfalls ein Base64Url-kodiertes JSON-Objekt und enthält die „Claims“ (Ansprüche). Claims sind Aussagen über eine Entität (in der Regel den Benutzer) und zusätzliche Daten. Es gibt drei Arten von Claims:
- Registrierte Claims: Dies sind vordefinierte Claims, die vom JWT-Standard empfohlen werden, um Interoperabilität zu gewährleisten. Gängige registrierte Claims sind iss (Issuer), sub (Subject), aud (Audience), exp (Expiration Time), nbf (Not Before), iat (Issued At) und jti (JWT ID).
- Öffentliche Claims: Dies sind Claims, die von denjenigen definiert werden, die JWTs verwenden (wie Google oder Microsoft), und sind in der Regel im IANA JSON Web Token Registry registriert.
- Private Claims: Dies sind benutzerdefinierte Claims, die erstellt wurden, um Informationen zwischen Parteien auszutauschen, die sich auf deren Verwendung geeinigt haben. Sie können beispielsweise {"role"
Unser JWT-Claims-Viewer macht es einfach, all diese Claims auf einen Blick zu inspizieren.
3. Die Signatur
Der dritte Teil des Tokens ist die JWT-Signatur. Sie wird erstellt, indem der kodierte Header, die kodierte Payload und ein geheimer Schlüssel (oder ein privater Schlüssel für asymmetrische Algorithmen) genommen und durch den angegebenen Algorithmus (alg) ausgeführt werden.
Der Zweck der Signatur besteht darin, die Authentizität des Tokens zu überprüfen. Sie stellt sicher, dass der Token während der Übertragung nicht verändert wurde. Wenn ein Angreifer auch nur ein einziges Zeichen in der Payload ändert, ist die Signatur nicht mehr gültig. Deshalb führt dieses Tool keine Signaturvalidierung durch und kann dies auch nicht tun – dazu wäre der geheime Schlüssel erforderlich, der niemals geteilt oder in ein Online-Tool eingefügt werden sollte. Dieser Decoder dient dazu, die Daten (Claims) im Token zu inspizieren, nicht um seine Echtheit zu verifizieren.
So verwenden Sie dieses JWT-Decoder-Tool
- Kopieren Sie Ihren Token: Kopieren Sie den vollständigen JWT-String (alle drei Teile) aus Ihrer Anwendung, dem lokalen Speicher des Browsers oder der API-Antwort.
- Fügen Sie den Token ein: Fügen Sie den Token in das Textfeld oben auf der Seite ein. Sie können auch die Schaltfläche „Beispiel laden“ verwenden, um einen gültigen Token zu sehen.
- Klicken Sie auf „Token dekodieren“: Das Tool analysiert den Token sofort.
- Überprüfen Sie die Ergebnisse: Header und Payload werden in zwei separaten, klar formatierten JSON-Boxen unten angezeigt, sodass Sie alle Claims und Metadaten leicht lesen können.
- Löschen: Klicken Sie auf die Schaltfläche „Löschen“, um von vorn zu beginnen.
Gängige Debugging-Szenarien
Ein JWT-Decoder ist in erster Linie ein Debugging-Tool. Hier sind gängige Probleme, die Sie damit lösen können:
- Fehler „Token abgelaufen“: Fügen Sie den Token ein und überprüfen Sie den exp-Claim. Vergleichen Sie diesen Unix-Timestamp mit der aktuellen Zeit, um zu sehen, ob der Token tatsächlich abgelaufen ist.
- Berechtigung verweigert: Dekodieren Sie die Payload, um den Claim „role“, „scopes“ oder andere benutzerdefinierte Claims zu überprüfen und sicherzustellen, dass der Benutzer die richtigen Berechtigungen hat.
- Benutzer nicht gefunden: Inspizieren Sie den sub-Claim (Subject), um sicherzustellen, dass die richtige Benutzer-ID an Ihr Backend gesendet wird.
- Token für diese App ungültig: Überprüfen Sie die Claims aud (Audience) und iss (Issuer), um sicherzustellen, dass sie mit den Erwartungen Ihres Servers übereinstimmen.
Verwandte Entwickler-Tools
Da JWTs auf anderen Webstandards aufbauen, könnten Sie diese Tools in Verbindung mit unserem Decoder nützlich finden:
- JSON Formatter: Wenn Ihre Payload einen verschachtelten, minifizierten JSON-String enthält, können Sie ihn aus dem Decoder kopieren und hier verschönern.
- Base64 Encoder/Decoder: Der JWT-Header und die Payload sind Base64Url-kodiert. Dieses Tool kann jeden Base64-String dekodieren.
- Unix Timestamp Converter: Wandeln Sie den exp- oder iat-Claim in ein für Menschen lesbares Datum um.