·4 Min. Lesezeit

JWT-Decoder für Mac — Einfügen und inspizieren

JWTs in jwt.io einzufügen, um ihre Claims zu lesen, funktioniert — bis du merkst, dass du gerade ein gültiges Token an eine Drittanbieter-Website geschickt hast.

Du nimmst ein JWT aus einem Request-Header oder einer Log-Datei. Es ist ein langer, durch Punkte getrennter String, der für das menschliche Auge nichts bedeutet. Du musst den Ablauf-Claim prüfen, den Aussteller verifizieren oder sehen, welche Scopes eingebettet sind. Also öffnest du jwt.io, fügst das Token ein und liest den dekodierten Payload im rechten Bereich.

Dieser Workflow hat ein Problem: Du hast gerade ein gültiges Authentifizierungs-Token über das Netzwerk an eine Website geschickt, die du nicht kontrollierst. JWT-Payloads enthalten oft Benutzer-IDs, E-Mail-Adressen, Rollen und Berechtigungen. Das Token selbst ist möglicherweise noch gültig. Selbst wenn jwt.io vertrauenswürdig ist — die Sicherheitsrichtlinien deines Unternehmens sehen das vielleicht anders.

Was ein JWT tatsächlich enthält

Ein JSON Web Token besteht aus drei Teilen, die durch Punkte getrennt sind: einem Header (Algorithmus und Typ), einem Payload (die Claims — Ablauf, Aussteller, Subjekt, benutzerdefinierte Daten) und einer Signatur. Header und Payload sind einfach Base64url-kodiertes JSON. Du brauchst keinen Server und keine spezielle Bibliothek, um sie zu lesen — du brauchst einen Base64-Decoder und einen JSON-Formatierer. Aber das jedes Mal manuell im Terminal zu machen, ist mühsam.

JWTs lokal auf deinem Mac dekodieren

Bellows enthält einen dedizierten JWT-Decoder, der das Token in seine drei Teile aufspaltet und den dekodierten Header und Payload als formatiertes JSON anzeigt. Füge das Token ein und sieh die Claims. Keine Netzwerkanfrage, kein Drittanbieter-Server, kein Risiko, ein gültiges Token zu leaken.

Bellows JWT-Decoder zeigt dekodierten Header und Payload auf macOS

Zwischenablage-fähig

Kopiere ein JWT aus den Entwickler-Tools deines Browsers, einer Log-Datei oder einer Slack-Nachricht. Öffne Bellows und die App erkennt das Token-Format in deiner Zwischenablage und schlägt sofort den JWT-Decoder vor. Der dekodierte Payload erscheint in einem Schritt.

Ablauf auf einen Blick prüfen

Der häufigste Grund, ein JWT zu dekodieren, ist die Prüfung, ob es abgelaufen ist. Der exp-Claim ist ein Unix-Zeitstempel — leicht für Maschinen, nichtssagend für Menschen. Den dekodierten Payload zu sehen, ermöglicht es dir, den Ablauf schnell zusammen mit anderen Claims wie iss, sub und aud zu lesen, ohne Zeitstempel im Kopf umzurechnen.

Teil eines größeren Werkzeugkastens

JWT-Dekodierung führt oft zu verwandten Aufgaben: einen Base64-Wert innerhalb eines Claims dekodieren, einen String hashen, um ihn mit einem Fingerabdruck zu vergleichen, oder eine Redirect-URI dekodieren, die im Payload gespeichert ist. Mit 41 Tools in derselben App erfordern diese Folgeaufgaben keinen Wechsel zu einem anderen Programm.

Bellows im Mac App Store laden

Nächster Artikel

Bellows

41 developer tools in one native Mac app — JSON, JWT, Base64, hashes, and more.

Get Bellows on the Mac App Store