Ratgeber

JWT mit JSON-Nutzlast und HS256 generieren

Mit dem JWT Generator erzeugen Sie aus optionalem JSON und einem Secret einen nicht leeren Token mit drei punktgetrennten Abschnitten. Leere Eingaben verwenden die vorgesehenen Standardwerte, während HMAC mit SHA-256 signiert.

Tool JWT-Generator

Wofür Sie die Eingaben verwenden

Der JWT Generator erstellt aus Text für eine optionale JSON-Nutzlast und einem Secret ein signiertes Token. Die Signierung erfolgt mit HMAC und SHA-256, während HS256 standardmäßig als Algorithmusbezeichnung im Header steht. Damit eignet sich das Werkzeug für einen kontrollierten Test, bei dem Sie eine bestimmte Nutzlast einsetzen oder zunächst die voreingestellten Eingaben verwenden möchten.

Für die Eingabe genügt ein JSON-Objekt als Text. Sie können beispielsweise eine Benutzerkennung und eine Rolle angeben. Die Nutzlast muss nicht ausgefüllt werden: Bei einem leeren Feld greift eine integrierte Standard-Nutzlast. Auch das Secret ist optional; eine leere Eingabe verwendet den voreingestellten Wert my-secret.

Behalten Sie dabei die beiden Eingaben gedanklich getrennt. Die Nutzlast beschreibt die Daten, die in den Token aufgenommen werden sollen, während das Secret für die Signierung verwendet wird. Ein eigenes Secret sollten Sie nicht gemeinsam mit den zugehörigen verschlüsselten oder signierten Daten aufbewahren. Der Generator ist für die Erzeugung eines neuen Tokens gedacht, nicht für das Prüfen oder Auslesen eines bereits vorhandenen Tokens.

So gehen Sie bei der Generierung vor

  1. Öffnen Sie den JWT Generator und entscheiden Sie, ob Sie eine eigene Nutzlast verwenden möchten. Wenn Sie konkrete Daten benötigen, tragen Sie einen gültigen JSON-Text ein, zum Beispiel {"sub":"kunde-42","rolle":"leser"}. Achten Sie auf doppelte Anführungszeichen bei Schlüsseln und Textwerten sowie auf eine passende Klammerung.

  2. Lassen Sie das Nutzlastfeld leer, wenn für Ihren Test die integrierte Standard-Nutzlast ausreicht. Ein leeres Feld wird nicht wie fehlerhafte JSON-Syntax behandelt, sondern löst den vorgesehenen Standardwert aus. Sobald Sie eigenen Inhalt eintragen, muss dieser als JSON parsebar sein.

  3. Tragen Sie im Secret-Feld einen eigenen Wert ein, falls Sie nicht den voreingestellten Wert verwenden wollen. Das Feld darf leer bleiben; dann wird my-secret eingesetzt. Verwenden Sie für einen nachvollziehbaren Ablauf bei wiederholten Tests denselben bewusst gewählten Eingabewert, und halten Sie ihn von den Nutzdaten getrennt.

  4. Sehen Sie sich die Algorithmusauswahl an und lassen Sie den Standardwert HS256 stehen, sofern keine andere Anzeige für Ihren konkreten Test benötigt wird. Diese Bezeichnung wird in den Token-Header übernommen. Die eigentliche Signierung verwendet weiterhin HMAC mit SHA-256; ein angezeigter anderer Algorithmuswert ist daher nicht automatisch eine Änderung dieser Signiermethode.

  5. Starten Sie die Generierung erst, wenn die Nutzlast syntaktisch gültig ist. Ungültiger JSON-Text führt zu einem nicht erfolgreichen Ergebnis, anstatt einen erfolgreich erzeugten Token zu liefern. Prüfen Sie bei einer Fehlermeldung zuerst die Anführungszeichen, Kommas, Doppelpunkte und geschlossenen Klammern in Ihrem eigenen Text.

  6. Sehen Sie sich danach die Ausgabe an, ohne aus ihrer Form mehr abzuleiten als vorgesehen. Bei erfolgreicher Generierung sollte ein nicht leerer Token mit drei durch Punkte getrennten Abschnitten erscheinen. Für einen Test können Sie die verwendete Nutzlast, die Algorithmusbezeichnung und Ihr Secret getrennt dokumentieren, ohne das Secret neben signierten Daten abzulegen.

Was das Ergebnis aussagt

Die erste sinnvolle Auswertung betrifft die sichtbare Form der Ausgabe. Ein nicht leerer Wert mit drei punktgetrennten Abschnitten entspricht der beschriebenen erfolgreichen Token-Struktur. Diese Beobachtung hilft Ihnen, eine erzeugte Ausgabe von einem leeren oder fehlgeschlagenen Ergebnis zu unterscheiden.

Aus der Dreiteilung folgt jedoch keine Aussage darüber, ob Ihre fachlichen Angaben passend sind. Ebenso lässt sich daraus nicht ableiten, dass ein bestimmter anderer Dienst den Token akzeptiert. Die Struktur ist deshalb eine begrenzte Formprüfung und kein Nachweis für eine dienstspezifische Verwendbarkeit.

Berücksichtigen Sie außerdem die Reihenfolge der Eingabefälle: Ein leeres Nutzlastfeld führt zum integrierten Standardwert, ein leeres Secret-Feld zum Wert my-secret, und ungültiger eigener JSON-Text verhindert eine erfolgreiche Ausgabe. Diese Fälle sollten bei der Interpretation eines Tests ausdrücklich auseinandergehalten werden.

Die Anzeige HS256 beschreibt den Wert im Header. Für die Signierung ist HMAC mit SHA-256 maßgeblich, weshalb Sie die sichtbare Bezeichnung und die beschriebene Signiermethode nicht als zwei frei voneinander unabhängige Einstellungen behandeln sollten.

Wenn Sie ein Ergebnis weiterverwenden, vergleichen Sie zunächst die beabsichtigte Eingabe mit dem tatsächlich eingetragenen Text und betrachten Sie danach die Token-Struktur. Der Generator erzeugt einen neuen Token; Angaben zu einer bestehenden Ausgabe werden von den geprüften Funktionen nicht validiert, dekodiert oder verifiziert.

Praktisches Beispiel

Sie bereiten für einen Test eine Ausgabe für den Benutzer kunde-42 mit der Rolle leser vor.

Tragen Sie {"sub":"kunde-42","rolle":"leser"} als Nutzlast und beispiel-schluessel als Secret ein, lassen Sie HS256 ausgewählt und starten Sie anschließend die Generierung.

Nach erfolgreicher Generierung erscheint ein nicht leerer Token, dessen drei Abschnitte durch Punkte voneinander getrennt sind.

Einschränkungen

  • Die Token-Dreiteilung beschreibt nur die ausgegebene Form. Sie bestätigt weder die fachliche Richtigkeit Ihrer Daten noch die Annahme durch einen anderen Dienst; fehlerhaftes JSON erzeugt keinen erfolgreichen Token.

Häufige Fehler

  • Fehlende doppelte Anführungszeichen oder eine nicht geschlossene Klammer machen die eigene Nutzlast zu ungültigem JSON. Korrigieren Sie den Text vor dem nächsten Start und lassen Sie keine versehentlich eingefügten Zusatzzeichen stehen.

Häufige Fragen

Kann die JSON-Nutzlast leer bleiben?

Das ist möglich, sofern Sie keinen eigenen Inhalt benötigen. Sobald Sie eine Nutzlast eintragen, muss der Text gültiges JSON ergeben; ein leer gelassenes Feld aktiviert dagegen die integrierte Standard-Nutzlast.

Ist ein eigenes Secret erforderlich?

Sie müssen keinen eigenen Wert eintragen, weil das Feld optional ist. Bei leerer Eingabe kommt my-secret zum Einsatz; ein selbst gewähltes Secret können Sie stattdessen für Ihren Test angeben.

Woran lässt sich die erfolgreiche Ausgabe erkennen?

Achten Sie auf einen nicht leeren Ausgabewert, der aus drei durch Punkte getrennten Abschnitten besteht. Diese Form beschreibt eine erfolgreiche Token-Struktur, sagt aber nicht voraus, ob ein anderer Dienst den Wert annimmt.

Tool

JWT-Generator