refactor: remove all JWT-related code and references
JWT was never used - auth uses X-User-Id header. Removes jwt.ts utility, jsonwebtoken dependency, stubbed refresh/logout endpoints, and updates all docs (PUML diagrams, api-routes, tex, CLAUDE.md) accordingly.
This commit is contained in:
@@ -11,15 +11,13 @@ Base URL: `/api`
|
||||
|--------|----------|--------------|
|
||||
| POST | `/auth/login` | User Login |
|
||||
| POST | `/auth/register` | User Registrierung |
|
||||
| POST | `/auth/refresh` | JWT Token erneuern |
|
||||
| POST | `/auth/logout` | User Logout |
|
||||
|
||||
---
|
||||
|
||||
## Events
|
||||
|
||||
### Event Endpoints (`/api/events`)
|
||||
Alle Endpoints erfordern JWT-Authentifizierung.
|
||||
Alle Endpoints erfordern Authentifizierung (X-User-Id Header).
|
||||
|
||||
| Method | Endpoint | Beschreibung |
|
||||
|--------|----------|--------------|
|
||||
@@ -35,7 +33,7 @@ Alle Endpoints erfordern JWT-Authentifizierung.
|
||||
## Chat
|
||||
|
||||
### Chat Endpoints (`/api/chat`)
|
||||
Alle Endpoints erfordern JWT-Authentifizierung.
|
||||
Alle Endpoints erfordern Authentifizierung (X-User-Id Header).
|
||||
|
||||
| Method | Endpoint | Beschreibung |
|
||||
|--------|----------|--------------|
|
||||
|
||||
@@ -188,11 +188,6 @@ package "Models" #D3D3D3 {
|
||||
}
|
||||
|
||||
package "Utils" #DDA0DD {
|
||||
class JWT {
|
||||
' +signToken()
|
||||
' +verifyToken()
|
||||
}
|
||||
|
||||
class Password {
|
||||
' +hash()
|
||||
' +compare()
|
||||
@@ -215,8 +210,6 @@ ChatController --> CaldavService
|
||||
EventController --> EventService
|
||||
EventController --> CaldavService
|
||||
CaldavController --> CaldavService
|
||||
AuthMiddleware --> JWT
|
||||
|
||||
' Service -> Interfaces (intern)
|
||||
AuthService --> UserRepository
|
||||
ChatService --> ChatRepository
|
||||
@@ -227,7 +220,6 @@ CaldavService --> CaldavRepository
|
||||
CaldavService --> EventService
|
||||
|
||||
' Auth uses Utils
|
||||
AuthService --> JWT
|
||||
AuthService --> Password
|
||||
|
||||
' Event/Chat uses Utils
|
||||
|
||||
@@ -77,7 +77,6 @@ package "apps/server (Express.js)" as ServerPkg #98FB98 {
|
||||
}
|
||||
|
||||
package "Utils" {
|
||||
[JWT] as JWTUtil
|
||||
[Password] as PwdUtil
|
||||
[RecurrenceExpander] as RecExpander
|
||||
[EventFormatters] as EvtFormatters
|
||||
@@ -154,9 +153,7 @@ GPT ..|> Interfaces
|
||||
Repos ..|> Interfaces
|
||||
|
||||
' Backend: Service -> Utils
|
||||
AuthSvc --> JWTUtil
|
||||
AuthSvc --> PwdUtil
|
||||
Middleware --> JWTUtil
|
||||
EventSvc --> RecExpander
|
||||
ChatSvc --> EvtFormatters
|
||||
|
||||
|
||||
@@ -66,7 +66,7 @@ Backend & Express.js & Web-App Framework \\
|
||||
& MongoDB & Datenbank \\
|
||||
& Mongoose & ODM \\
|
||||
& Claude (Anthropic) & KI / LLM \\
|
||||
& JWT & Authentifizierung \\
|
||||
& X-User-Id Header & Authentifizierung \\
|
||||
\hline
|
||||
Geplant & iCalendar & Event-Export \\
|
||||
\hline
|
||||
@@ -112,8 +112,9 @@ Der wichtigste Teil der App ist die KI-Integration über \textbf{Claude}
|
||||
(Anthropic). Dieses LLM verarbeitet natürlichsprachliche Eingaben der Nutzer und
|
||||
generiert daraus strukturierte Event-Vorschläge.
|
||||
|
||||
Die Authentifizierung läuft über \textbf{JSON Web Tokens} (JWT). Der Vorteil:
|
||||
zustandslose Sessions, bei denen der Server keine Session-Daten speichern muss.
|
||||
Die Authentifizierung erfolgt über einen \textbf{X-User-Id Header}, der bei
|
||||
jedem Request die User-ID mitschickt. Diese einfache Lösung reicht für den
|
||||
aktuellen Entwicklungsstand aus.
|
||||
|
||||
Geplant ist außerdem die Unterstützung des \textbf{iCalendar}-Formats (ICAL)
|
||||
für den Export von Kalender-Events.
|
||||
@@ -157,7 +158,7 @@ Notiz-Feld) und ChatMessage.
|
||||
Der Controller Layer bildet die Schnittstelle zwischen Frontend und
|
||||
Backend-Logik. Die Routes definieren die API-Endpunkte, die Controller
|
||||
verarbeiten die eingehenden Requests und reichen diese an die Services weiter.
|
||||
Eine Auth Middleware prüft bei geschützten Routen den JWT-Token.
|
||||
Eine Auth Middleware prüft bei geschützten Routen den X-User-Id Header.
|
||||
|
||||
\subsubsection{Service Layer}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user