Verwenden Sie Refesh Token, wenn die Token-basierte Authentifizierung gesichert ist?

Ich erstelle eine tokenbasierte Authentifizierung (Node.js unter Verwendung von passport / JWT mit einem Angular-Client).

Nachdem der Benutzer seine Anmeldeinformationen eingegeben hat, erhält er einen Zugriffstoken, den er bei jeder Anforderung innerhalb des Headers sendet (Header: Bearer TOKEN).

Ich möchte nicht jedes Mal eine Anmeldeanfrage stellen, wenn sein Zugriffstoken abläuft (über jeden Tag denke ich), ich habe über die @ gehöRefresh Tokens. Das Aktualisierungstoken läuft nie ab (oder läuft selten ab) und kann Token auf unbestimmte Zeit erneuern. Wenn das Zugriffstoken bald abläuft, kann der Client eine Erneuerungsanforderung senden, um ein neues Zugriffstoken zu erhalten, indem er sein Aktualisierungstoken sendet.

Ich verstehe einige Dinge nicht, es könnte mir etwas fehlen:

Wie ein langlebiger / nie ablaufender Aktualisierungstoken die Sicherheit von kurzlebigen Zugriffstoken nicht beeinträchtigt.

Cookies können gestohlen und bis zu ihrem Ablauf verwendet werden. Tokens sind kurzlebig, damit sie sicherer sind. Wenn ich jedoch ein langlebiges Auffrischungs-Token zur Verfügung stelle, verliere ich den Vorteil der Verwendung von Tokens.

HINWEIS: Mir ist bekannt, dass die Aktualisierungstoken beim erstmaligen Anmelden gesendet werden und daher nicht bei jeder Anforderung gefälscht werden können. Wenn sie jedoch bei der erstmaligen Anforderung gefälscht werden, sind sie anfällig.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage