Benutzer
Konten anlegen, Rollen vergeben, Passwörter zurücksetzen -- und wissen, was beim Deaktivieren oder Löschen eines Kontos wirklich passiert.
Zweck
Jede Person, die sich bei Kommunova anmeldet, braucht ein Benutzerkonto mit genau einer Rolle. Die Rolle bestimmt, was jemand sehen und tun darf (siehe Rollen & Berechtigungen für die vollständige Rechtematrix). Die Benutzerverwaltung im Bereich Admin → Benutzer ist der zentrale Ort, um Konten anzulegen, Rollen zu ändern, Passwörter zurückzusetzen und Konten zu deaktivieren.
Ist jemand einer Gruppe (Amt, Kolonne oder Firma) zuzuordnen, geschieht das getrennt im Bereich Admin → Gruppen -- die Rolle steuert die grundsätzlichen Rechte, die Gruppenmitgliedschaft steuert, welche Vorgänge jemand zugewiesen bekommt.
Aktionen
Im Bereich Admin → Benutzer können System-Administratoren:
- Benutzer anlegen mit Vorname, Nachname, E-Mail-Adresse und Rolle. Das Konto wird zunächst nur in der App-Datenbank angelegt -- der Zugang in Keycloak (Login) muss separat eingerichtet werden.
- Rolle ändern (System-Admin, Koordinator, Mitarbeiter, Externe Firma, Gast). Nur ein System-Administrator darf die Rolle System-Administrator vergeben, und niemand kann die eigene Rolle ändern.
- Konto deaktivieren / aktivieren über den Status-Umschalter in der Benutzerliste.
- Passwort zurücksetzen über den "Passwort"-Button -- setzt direkt ein neues Passwort für das Keycloak-Konto der Person (kein Reset-Link per E-Mail).
- Als Nutzer anzeigen -- wechselt für den eigenen Browser vorübergehend (4 Stunden) in den Kontext einer anderen Person, um die App genau so zu sehen wie sie. Nicht möglich für das eigene Konto und nicht für andere System-Administratoren-Konten (Missbrauchsschutz). Eine deutlich sichtbare Leiste am oberen Bildschirmrand zeigt jederzeit, wer gerade angezeigt wird, mit einem Ein-Klick-Rückweg zum eigenen Konto.
- Benutzer per Name oder E-Mail suchen und die Liste durchblättern.
Ein endgültiges Löschen von Konten ist über die Verwaltungsoberfläche aktuell nicht vorgesehen (kein Button in der Benutzerliste) -- die zugrundeliegende Funktion existiert im Backend (DELETE /admin/users/:id), ist aber ausschließlich System-Administratoren über die API zugänglich und für Sonderfälle (z. B. versehentlich angelegte Test- oder Doppelkonten) gedacht.
Impact
Deaktivieren ist reversibel. Eine deaktivierte Person kann sich nicht mehr anmelden, bleibt aber als Datensatz erhalten -- bisherige Vorgänge, Kommentare und Zuweisungen bleiben sichtbar und nachvollziehbar. Ein Konto kann jederzeit wieder aktiviert werden.
Achtung -- endgültiges Löschen ist unwiderruflich. Der harte Lösch-Endpunkt (DELETE /admin/users/:id) entfernt den Benutzerdatensatz vollständig aus der App-Datenbank. Er ist ausschließlich System-Administratoren vorbehalten, eine Person kann sich damit nicht selbst löschen, und Keycloak wird davon nicht berührt -- der Keycloak-Zugang muss separat entfernt werden, sonst kann sich die Person weiterhin anmelden, obwohl kein App-Datensatz mehr existiert.
Eine Rollenänderung wirkt sofort auf die nächste Aktion der Person (z. B. verliert ein degradierter Koordinator sofort das Recht, Abnahmen zu erteilen), ändert aber nichts an bereits bestehenden Zuweisungen oder der Vorgangs-Historie.
Ein Passwort-Reset ersetzt sofort das aktuelle Passwort in Keycloak -- die Person wird bei der nächsten Anmeldung mit dem neuen Passwort angemeldet, laufende Sitzungen auf anderen Geräten bleiben davon zunächst unberührt.
Als Nutzer anzeigen verändert keine Daten der angezeigten Person -- Aktionen, die während der Anzeige ausgeführt werden, erscheinen im Audit-Log unter der angezeigten Person, nicht unter dem eigenen Konto. Start und Ende jeder Anzeige-Sitzung werden zusätzlich als eigene Einträge im Audit-Log festgehalten (wer hat wen wann angezeigt). Die Sitzung endet automatisch nach 4 Stunden oder sofort beim eigenen Abmelden, spätestens aber beim Klick auf "Zurück zu meinem Account".
Beispiele
Beispiel: Ein Mitarbeiter des Werkhofs verlässt die Gemeinde. Statt das Konto zu löschen (und damit die Historie seiner erledigten Aufträge unvollständig zu machen), wird es deaktiviert. Alle von ihm abgeschlossenen Vorgänge bleiben mit korrektem Bearbeiter sichtbar, er selbst kann sich aber nicht mehr anmelden.
Beispiel: Ein Außendienstmitarbeiter wird zum Koordinator befördert. Die Rolle wird in der Benutzerliste von "Mitarbeiter" auf "Koordinator" geändert -- ab sofort kann die Person Vorgänge prüfen, Zuständigkeiten festlegen und Abnahmen erteilen, verliert aber keine bisherigen Rechte, die sie ohnehin nicht hatte.