Cookie-basierte Authentifizierung in Axum: Von Extractors zu Middleware
Dieser Artikel untersucht zwei Ansätze zur Implementierung einer cookie-basierten Benutzerauthentifizierung im Rust Axum Framework. Zunächst zeigt der Autor die Verwendung eines benutzerdefinierten Extractors, `CookieJwt`, um JWT-Token aus Anfragen abzurufen und je nach Gültigkeit des JWT einen "Profil"- oder "Anmelden"-Button anzuzeigen. Dieser Ansatz erweist sich jedoch als weniger sauber und skalierbar für komplexe Authentifizierungsszenarien. Der Artikel refaktoriert dann die Lösung mithilfe von Axum Middleware, wodurch ein saubererer, wiederverwendbarer und flexiblerer Ansatz zur Behandlung der Authentifizierungslogik entsteht. Diese Middleware validiert JWTs effizient, verwaltet Aktualisierungstoken und verarbeitet verschiedene Anfragetypen, was zu einem robusteren und anpassungsfähigeren Benutzerauthentifizierungssystem führt. Der Autor beschreibt die Implementierung der Middleware und hebt deren Vorteile gegenüber dem Extractor-basierten Ansatz hervor.