Block a user
[Multi-Tenant] Frontend: Login-Page + User-Management
[Multi-Tenant] Frontend: Login-Page + User-Management
Umgesetzt in 946a560.
Was wurde gemacht:
Login-Page Update
- E-Mail/Username + Passwort-Felder (war vorher nur Passwort)
- Error-Handling für falsche Credentials beibehalten
###…
[Multi-Tenant] Frontend: Login-Page + User-Management
Prerequisite #81 ist abgeschlossen (51f268e). User-CRUD API ist jetzt verfügbar:
GET/POST /api/v1/users+GET/PUT/DELETE /api/v1/users/{id}GET/PUT /api/v1/users/me- `POST /api/v1/users…
[Multi-Tenant] User-CRUD API Endpoints
[Multi-Tenant] User-CRUD API Endpoints
Umgesetzt in 51f268e.
Neue Dateien
api/routes/users.py– 8 Endpoints (CRUD + /me + reset-password)services/user_service.py– Business-Logik mit RBAC + Tenant-Isolation
###…
[Multi-Tenant] Frontend: Login-Page + User-Management
⚠️ Breaking Change aus #80 (0e983c6): Login-API hat sich geändert.
Alt: POST /auth/login {"password": "..."}
Neu: POST /auth/login {"email_or_username": "...", "password": "..."}…
[Multi-Tenant] User-CRUD API Endpoints
Prerequisite #80 ist abgeschlossen (0e983c6). UserRepository existiert jetzt mit Basis-Methoden (get_by_email_or_username, get_by_id, count, update_last_login, update_password_hash).…
[Multi-Tenant] AuthService auf User-basierten Login umbauen
[Multi-Tenant] AuthService auf User-basierten Login umbauen
Umgesetzt in 0e983c6.
Änderungen
AuthService Rewrite
verify_password→verify_password_hash(plain, stored_hash)(static, arbeitet mit beliebigem Hash)- Constructor braucht kein…
fix: handle_generic_direct() droppt alle Werte außer erstem bei JSON-Payloads
feat: Interaktiver MQTT Topic Explorer (Frontend)
[Multi-Tenant] AuthService auf User-basierten Login umbauen
Prerequisite #79 ist abgeschlossen (f08156f). AuthContext Dataclass + require_auth Rewrite sind implementiert:
require_authgibtAuthContext(user_id, tenant_id, role)zurück- JWT-Payload…
feat: API für manuelle Topic-Boundary-Korrektur und Device-Merge
[Multi-Tenant] AuthContext Dataclass + require_auth Rewrite
[Multi-Tenant] AuthContext Dataclass + require_auth Rewrite
Umgesetzt in f08156f:
- AuthContext frozen dataclass mit
user_id,tenant_id,role+ Convenience-Properties (is_admin,can_write) undrequire_role()Methode - require_auth gibt…
feat: Topic-Tree API für MQTT Explorer