Workflow
Lista pokazuje użytkowników i role. Menu akcji pozwala edytować konto, zmienić hasło albo aktywność. Mutacje przechodzą przez /api/settings/users, a błędy walidacji wracają do właściwego dialogu, więc operator nie traci kontekstu.
Autoryzacja
Panel użytkowników pozwala dodać konto, zmienić rolę, hasło i aktywność, ale ważniejsze jest to, że endpointy ponownie sprawdzają uprawnienia. UI może ukrywać akcję, jednak zapis danych przechodzi przez autoryzację, walidację i audyt.
Lista pokazuje użytkowników i role. Menu akcji pozwala edytować konto, zmienić hasło albo aktywność. Mutacje przechodzą przez /api/settings/users, a błędy walidacji wracają do właściwego dialogu, więc operator nie traci kontekstu.
Dodaj użytkownika. Tworzy konto z rolą i hasłem.
Edytuj użytkownika. Aktualizuje dane i rolę przez intent update.
Zmień hasło. Ma osobny intent change-password i osobny komunikat błędu.
Aktywuj / dezaktywuj. Zmienia możliwość logowania bez kasowania konta historycznego.
flowchart TD
A["Użytkownik klika akcję"] --> B["UI pokazuje dialog"]
B --> C["POST /api/settings/users"]
C --> D{"Sesja i rola poprawne?"}
D -->|Nie| E["Odmowa operacji"]
D -->|Tak| F["Zod / walidacja use case"]
F -->|Błąd| G["Komunikat w dialogu"]
F -->|OK| H["Zapis użytkownika / hasła / aktywności"]
H --> I["audit_log"]
To nie jest tylko ekran administracyjny. Te same role są sprawdzane w endpointach przez mechanizmy autoryzacji, więc ukrycie przycisku w UI nie jest jedyną ochroną operacji.