JWT Generator

HS256 JWT für API-Authentifizierungstests erstellen

Erstellen Sie ein signiertes HS256 JWT mit Standardansprüchen (sub, name, email, exp) zum Testen von API-Authentifizierungsmiddleware ohne echten Authentifizierungsserver.

100% clientseitig. Deine Daten verlassen niemals deinen Browser.

Algorithmus

Schlüssel

Claims

Benutzerdefinierte Claims

Keine benutzerdefinierten Claims hinzugefügt

Verwandte Werkzeuge

Dieses Beispiel befüllt den JWT Generator mit einer HS256-Konfiguration und einem vollständigen Satz von Standardansprüchen. Sie erhalten ein signiertes JWT, das Sie in Ihren API-Client, Curl-Befehl oder Integrationstest einfügen können.

Das Tool erstellt den JWT-Header {"alg":"HS256","typ":"JWT"}, baut eine Nutzlast mit Ihren Ansprüchen auf und signiert das codierte Ergebnis mit HMAC-SHA256 unter Verwendung des bereitgestellten Secrets. Die Ausgabe enthält die endgültige JWT-Zeichenfolge, eine Aufschlüsselung der drei durch Punkte getrennten Abschnitte (Header, Payload, Signatur) und den verwendeten Signaturschlüssel.

Wann HS256 Verwenden

HS256 (HMAC mit SHA-256) ist ein symmetrischer Signaturalgorithmus. Dasselbe Secret signiert und verifiziert den Token. Dies macht es schnell und einfach, bedeutet aber, dass jeder Dienst, der einen Token verifizieren muss, das Secret kennen muss.

SzenarioHS256RS256
Einzelne API mit einer Auth-DomäneGute WahlÜbertrieben
Microservices (viele Verifizierer)Risiko (geteiltes Secret)Besser
Drittanbieter-VerifiziererNicht möglichErforderlich
SchlüsselrotationKomplex (alle aktualisieren)Einfach (nur Aussteller)

HS256 eignet sich gut für Monolithen, Single-Page-Anwendungen mit Backend und Entwicklungs-/Testumgebungen, in denen Sie beide Enden kontrollieren.

Anatomie des Generierten Tokens

Das Tool generiert drei durch Punkte getrennte Teile:

Header (base64url-decodier):

{"alg":"HS256","typ":"JWT"}

Payload (base64url-decodier):

{
  "sub": "user_abc123",
  "name": "Alice Smith",
  "email": "alice@example.com",
  "iss": "https://api.dev",
  "exp": 1735689600,
  "iat": 1735686000,
  "jti": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

Signatur: HMAC-SHA256 von base64url(header).base64url(payload) mit dem bereitgestellten Secret.

Der exp-Anspruch wird auf eine Stunde ab Generierung gesetzt. Die Ansprüche iat (ausgestellt um) und jti (JWT-ID) werden automatisch generiert.

Wie Man Diesen Token Verwendet

  1. Klicken Sie auf Generieren, um ein signiertes JWT mit den vorgefüllten Werten zu erstellen.
  2. Kopieren Sie die Token-Zeichenfolge mit der Kopierschaltfläche neben der Ausgabe.
  3. Fügen Sie sie als Authorization-Header zu Ihrer HTTP-Anfrage hinzu:
    Authorization: Bearer <token>
  4. In Curl: curl -H "Authorization: Bearer <token>" https://api.example.com/endpoint
  5. Fügen Sie den Token in das JWT Decoder-Tool ein, um die decodierte Nutzlast zu inspizieren.

Häufige Fallstricke

Der sub-Anspruch sollte ein stabiler Identifikator für den Benutzer sein, keine E-Mail oder ein Benutzername, der sich ändern kann. Verwenden Sie eine Datenbank-ID oder UUID. Der iss-Anspruch sollte mit dem erwarteten Ausstellerwert übereinstimmen, den Ihre API-Middleware prüft. Viele JWT-Bibliotheken lehnen Token ab, bei denen iss nicht mit dem konfigurierten erwarteten Aussteller übereinstimmt.

Wenn Sie das Secret ändern, werden alle zuvor ausgestellten Token sofort fehlschlagen. Planen Sie die Secret-Rotation, indem Sie während Übergangszeiträumen mehrere gültige Secrets unterstützen.

Verwandte Tools

Verwenden Sie den Hash Generator, um das HMAC-Verhalten mit verschiedenen Eingaben zu überprüfen. Der JWT Decoder kann jedes von Ihnen generierte JWT inspizieren, einschließlich Token von Drittanbieter-Identitätsanbietern.