Sichere Authentifizierung und Autorisierung nach Industriestandard.
JWT und OAuth2 sind die etablierten Bausteine, mit denen sichere Anmeldung und Berechtigung im Web umgesetzt werden, und sie lösen zwei verschiedene Aufgaben. OAuth2 regelt den Ablauf, über den eine Anwendung im Namen eines Nutzers Zugriff erhält, ohne dessen Passwort je zu sehen. Ein JWT ist das handliche, signierte Token, das danach bei jeder Anfrage mitläuft und ohne Rückfrage an die Datenbank geprüft werden kann. Darauf aufbauend setzen wir Logins, übergreifendes Single Sign-on und fein abgestufte Rechte nach Industriestandard um.
Mehr in der DokumentationWir setzen das ein, wenn ein Login von Drittanbietern wie Google kommen oder eine API zustandslos abgesichert sein soll. Das signierte Token prüfen unsere Dienste lokal, deshalb braucht nicht jede Anfrage eine Rückfrage an die Datenbank. Bei mehreren zusammenspielenden Diensten ermöglicht uns das ein gemeinsames Single Sign-on ohne doppelte Anmeldung.
import jwt from "jsonwebtoken";
const token = jwt.sign({ sub: user.id }, secret, { expiresIn: "15m" });
const payload = jwt.verify(token, secret);
console.log(payload.sub);Gut zu wissen
Ein einmal ausgegebenes JWT lässt sich vor Ablauf nicht ohne Weiteres zurückziehen, weil es bewusst zustandslos geprüft wird. Wir halten die Lebensdauer der Access-Tokens deshalb kurz und erneuern sie über ein separates Refresh-Token, das sich im Ernstfall sperren lässt.
Weitere Werkzeuge, mit denen wir im selben Bereich arbeiten.
Node.js
JavaScript-Laufzeit für performante, event-getriebene Server.
NestJS
Strukturiertes Node-Framework für saubere, testbare Backend-Architekturen.
Express
Schlankes, flexibles Framework für APIs und Webservices.
Socket.IO
Bidirektionale Realtime-Kommunikation für Chats, Live-Daten und mehr.
GraphQL
Flexible APIs, die genau die Daten liefern, die der Client braucht.
REST APIs
Klare, standardisierte Schnittstellen für jede Integration.
Das musst du nicht entscheiden, das ist unser Job. Erzähl uns einfach von deinem Vorhaben.