Sobes.tech
Junior — Middle

Wie kann man überprüfen, ob ein JWT-Token gültig und aktiv ist?

sobes.tech KI

Antwort von AI

Um JWT-Token auf Gültigkeit und Aktivität zu überprüfen, sind mehrere Schritte erforderlich:

  1. Signaturprüfung: Mit dem geheimen Schlüssel (für HMAC) oder dem öffentlichen Schlüssel (für RSA/ECDSA) überprüfen, ob die Signatur des Tokens korrekt ist und nicht verändert wurde.

  2. Überprüfung der Ablaufzeit: Die Felder exp (Ablaufzeit) und nbf (nicht vor) prüfen, um sicherzustellen, dass das Token nicht abgelaufen ist und bereits aktiv ist.

  3. Überprüfung anderer Behauptungen (Claims): Zum Beispiel iss (Aussteller), aud (Zielgruppe) — um sicherzustellen, dass das Token für Ihre Anwendung bestimmt ist.

Beispiel in Python mit der Bibliothek PyJWT:

import jwt
from jwt import ExpiredSignatureError, InvalidTokenError

geheimnis = 'Ihr-geheimer-Schlüssel'
token = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9...'

try:
    payload = jwt.decode(token, geheimnis, algorithms=['HS256'], audience='Ihre-Zielgruppe')
    # Das Token ist gültig und aktiv
    print('Payload:', payload)
except ExpiredSignatureError:
    print('Token ist abgelaufen')
except InvalidTokenError:
    print('Ungültiges Token')

Auf diese Weise wird die Gültigkeit des JWT durch die Überprüfung der Signatur und der Ablaufzeiten bestimmt, und die Aktivität durch die Übereinstimmung mit den aktuellen Zeitbeschränkungen des Tokens.