JWT Decoder/

Ihre Daten sind 100% privat -- JWT wird vollständig direkt auf Ihrem Gerät decodiert und codiert.

JWT
Dekodierter Header
Dekodierte Nutzlast
Öffentlicher Schlüssel

Mehr über JWT erfahren

Alle Informationen, die Sie über JWT betreffen, und Schritt-für-Schritt-Anleitung zur JWT-Verifizierung in verschiedenen Frameworks.

Was ist JWT?

JWT (JSON Web Token) ist ein eigenständiges, zustandsloses Token, das Informationen in einem strukturierten und lesbaren Format enthält. Ob Sie eine API schützen oder eine tokenbasierte Authentifizierung für Ihre Anwendung übernehmen, JWTs sind ein leistungsstarkes Werkzeug, weil sie:

  • Zustandslos: JWTs sind eigenständig und erfordern keinen serverseitigen Zustand zur Validierung. JWT kann die Datenintegrität über Signaturen gewährleisten.
  • Kompatibilität zwischen Diensten: JWTs können leicht zwischen verschiedenen Diensten geteilt und verifiziert werden.
  • Erweiterbar: Die Nutzlast eines JWT kann benutzerdefinierte Ansprüche enthalten, die flexible Autorisierung und Informationsaustausch ermöglichen.
Mehr erfahren

Die Struktur von JWT

Ein typisches JWT ist in drei Teile unterteilt, jeder in Base64URL kodiert und durch Punkte (.) getrennt:

  • Header - Enthält Metadaten, wie den Signaturalgorithmus (z. B. HS256 oder RS256) und den Token-Typ (JWT).
  • Nutzlast - Enthält die eigentlichen Daten, wie Benutzer-ID, Benutzerprofil, Ablaufzeit oder Bereiche.
  • Signatur - Eine gehashte Kombination von Header, Nutzlast und gesichert mit einem geheimen Schlüssel. Ihr Zweck ist es, die Integrität des Tokens sicherzustellen und zu bestätigen, dass es nicht verändert wurde

Diese Struktur ermöglicht es JWTs, auf kompakte und sichere Weise Informationen zwischen Parteien zu übertragen.

jwt_structure

Häufige Ansprüche im JWT

Die Ansprüche sind Teil der Nutzlast und enthalten die wichtigsten Informationen. Hier sind standardisierte registrierte Ansprüche zur Orientierung:

AnsprücheVollständiger NameBeschreibung
issHerausgeberDie Entität, die das JWT ausgestellt hat, wie der Autorisierungsserver.
subSubjektIdentifiziert das Subjekt des JWT, das typischerweise den authentifizierten Benutzer darstellt.
audEmpfängerGibt an, welche Empfänger das Token akzeptieren und verarbeiten können. Dies kann ein Array von Werten für mehrere Empfänger oder ein einzelner Wert für einen einzigen Empfänger sein.
expAblaufzeitSetzt eine Ablaufzeit für das Token fest, nach der es ungültig wird. Dies hilft, Replay-Angriffe zu verhindern, indem die Gültigkeitsdauer des Tokens begrenzt wird.
nbfNicht vorMacht ein Token erst nach diesem Zeitstempel gültig. Nützlich in Situationen, in denen Uhren nicht zugänglich sind.
iatAusgestellt amWann das Token erstellt wurde. Dies kann verwendet werden, um das Alter des Tokens zu bestimmen.
jtiJWT-IDEine eindeutige Kennung für das Token, nützlich, um zu verhindern, dass das gleiche Token mehrfach verwendet wird (z. B. bei Replay-Angriffen).

Abhängig von der Spezifikation und der Konfiguration des Autorisierungsservers können zusätzliche Ansprüche in der Nutzlast enthalten sein, um spezifische Anwendungsfälle zu unterstützen. Sie können JWT auch benutzerdefinierte Ansprüche hinzufügen, um einzigartige geschäftliche Anforderungen zu erfüllen.

Vorsicht: Speichern Sie keine privaten oder sensiblen Informationen in JWT-Ansprüchen. Während JWT-Ansprüche kodiert sind (mithilfe von Base64URL), sind sie nicht verschlüsselt. Dies bedeutet, dass jeder mit dem Token es dekodieren und die Ansprüche anzeigen kann, auch wenn er es nicht ändern kann, ohne die Signatur ungültig zu machen. Verwenden Sie Verschlüsselung oder andere sichere Methoden, um sensible Daten bei Bedarf zu schützen.

Wann JWT verwenden?

JWTs können besonders in den folgenden Szenarien vorteilhaft sein:

  1. Microservices-Architektur: Für zustandslose Authentifizierung zwischen mehreren Diensten.
  2. Single-Sign-On (SSO)-Systeme: Zugang zu mehreren Anwendungen mit einer Authentifizierung ermöglichen.
  3. Mobile Anwendungen: Benutzersitzungen effizient über API-Aufrufe hinweg aufrechterhalten.
  4. Hochverkehrs-Anwendungen: Datenbankbelastung in Hochlastumgebungen reduzieren.
  5. Cross-Origin-Resource-Sharing (CORS): Authentifizierung über mehrere Domains hinweg vereinfachen.
  6. Serverlose Architekturen: Bietet zustandslose Authentifizierung, wo serverseitige Sitzungen eine Herausforderung darstellen.
Mehr erfahren

Wie überprüft man JWT?

Die Integrität eines JWT muss überprüft werden, um sicherzustellen, dass sein Header und seine Nutzlast nicht manipuliert wurden. Unten finden Sie Schritt-für-Schritt-Beispiele zur Verifizierung von JWTs in beliebten Programmierumgebungen:

Verwandte JWT-Themen

Alle Informationen, die Sie über JWT betreffen, und Schritt-für-Schritt-Anleitung zur JWT-Verifizierung in verschiedenen Frameworks.

Entdecken Sie mehr mit Logto Cloud

Vereinfachen Sie Ihren Arbeitsablauf und stellen Sie eine sichere Benutzerverwaltung mit Logto Cloud sicher. Basierend auf OpenID Connect (OIDC) nutzt es JWT, um ein zuverlässiges Authentifizierungs- und Autorisierungssystem bereitzustellen, das mit Ihren Bedürfnissen skaliert.