Benutzerverwaltung, Firmenstamm und Rollenlegende
Die Verwaltung war bisher eine reine Anzeige. Sie gliedert sich jetzt in vier Reiter und ist handlungsfähig. Benutzer - Zugänge anlegen, bearbeiten, sperren und entsperren - Startkennwort wird erzeugt und genau einmal angezeigt, auf Wunsch zusätzlich per E-Mail versandt; es liegt nirgends im Klartext - Kennwort zurücksetzen beendet zugleich alle laufenden Sitzungen - Wer sich mit einem Startkennwort anmeldet, wird unmittelbar zur Vergabe eines eigenen Kennworts geführt; bis dahin weist ein Streifen im Kopfbereich darauf hin - Zugänge werden gesperrt, nicht gelöscht: Bautagebucheinträge, Prüfvermerke und Bescheinigungen müssen dauerhaft einer Person zuordenbar bleiben Aussperrschutz - der eigene Zugang lässt sich weder sperren noch die eigene Administration entziehen - es muss stets mindestens ein aktiver Administrationszugang bestehen - Firmen mit bestehenden Verträgen lassen sich nicht stilllegen Firmen - Stammdaten mit Art, Anschrift, Kreditorennummer und USt-IdNr., stilllegbar Rollen und Rechte - Legende aller Rollen, getrennt nach Auftraggeber- und Auftragnehmerseite - vollständige Rechtematrix, unmittelbar aus PERMISSIONS erzeugt und damit nicht von der Wirklichkeit im Code trennbar - Übersicht der Projektschalter und der fest verdrahteten Sperren Protokoll - Filter nach Aktion und Person, Blätterung, haftungsrelevante Vorgänge hervorgehoben Nebenbei behoben - next.config: "output: standalone" entfernt, weil es sich mit "next start" nicht verträgt; nicht mehr unterstützten eslint-Schlüssel entfernt - Unterlagen des Auftraggebers (*.xlsx) gehören nicht ins Repository Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
807b7ce541
commit
8af6b384ea
@@ -51,6 +51,10 @@ Bewusst schmal gehalten – vier bewegliche Teile, keine Fremddienste:
|
||||
- **Eigene Session-Authentifizierung** (bcrypt, HttpOnly-Cookie) statt zusätzlichem Auth-Dienst
|
||||
- **Nodemailer** gegen ein beliebiges SMTP-Relais; im Testbetrieb Mailpit
|
||||
|
||||
Kennwörter liegen als bcrypt-Hash (Kostenfaktor 11). Sitzungen sind serverseitig in der
|
||||
Datenbank hinterlegt und lassen sich dadurch gezielt beenden – beim Sperren eines Zugangs,
|
||||
beim Zurücksetzen eines Kennworts und bei jeder Kennwortänderung.
|
||||
|
||||
### Persistenz ohne Named Volumes
|
||||
|
||||
Alle persistenten Daten liegen als Bind-Mount direkt im Compose-Verzeichnis:
|
||||
@@ -78,7 +82,7 @@ SHA-256-Prüfsumme in der Datenbank, nachträgliche Veränderungen sind erkennba
|
||||
| **Stunden & Aufmaß** | Auftragnehmer reicht ein, Bauüberwachung erkennt **zeilenweise** an – das ist die Messlatte der Rechnungsprüfung |
|
||||
| **Rechnungsprüfung** | Automatischer Abgleich gegen Vertrag, Aufmaß, Stundenzettel und Vorrechnungen; getrennte Bescheinigung *sachlich richtig* / *rechnerisch richtig* / Zahlungsfreigabe |
|
||||
| **Kommunikation** | Projektkanäle statt E-Mail-Pingpong, `@Nachname`-Erwähnungen, E-Mail-Benachrichtigung je nach Profileinstellung |
|
||||
| **Verwaltung** | Benutzer, Firmen, revisionssicheres Protokoll aller Vorgänge |
|
||||
| **Verwaltung** | Zugänge anlegen und sperren, Kennwörter zurücksetzen, Firmenstamm, Rollenlegende, revisionssicheres Protokoll |
|
||||
|
||||
### Rechnungsprüfung – geprüfte Befunde
|
||||
|
||||
@@ -226,6 +230,36 @@ Soll-Katalog nachziehen* fehlende Positionen nach und rechnet die Fristen aller
|
||||
offenen Positionen neu. Einmal angelegte Positionen werden nie gelöscht – nicht mehr
|
||||
zutreffende setzt man einzeln auf „entfällt“, dann bleibt der Grund dokumentiert.
|
||||
|
||||
### Benutzerverwaltung
|
||||
|
||||
Unter *Verwaltung* (nur für Zugänge mit Administrationsrecht), in vier Reitern:
|
||||
|
||||
| Reiter | Inhalt |
|
||||
|---|---|
|
||||
| **Benutzer** | Zugänge anlegen, bearbeiten, sperren und entsperren, Kennwort zurücksetzen |
|
||||
| **Firmen** | Firmenstamm mit Art, Anschrift, Kreditorennummer und USt-IdNr. |
|
||||
| **Rollen & Rechte** | Legende aller Rollen und die vollständige Rechtematrix – unmittelbar aus `rbac.ts` erzeugt und damit nie veraltet |
|
||||
| **Protokoll** | Alle Vorgänge mit Filter nach Aktion und Person |
|
||||
|
||||
**Kennwörter.** Beim Anlegen wird ein Startkennwort erzeugt und **genau einmal** angezeigt
|
||||
(auf Wunsch zusätzlich per E-Mail versandt). Es ist nirgends im Klartext gespeichert. Wer
|
||||
sich damit anmeldet, landet unmittelbar auf der Profilseite und muss ein eigenes Kennwort
|
||||
vergeben; bis dahin weist ein Streifen im Kopfbereich darauf hin. Ein Zurücksetzen durch die
|
||||
Administration beendet zugleich alle laufenden Sitzungen.
|
||||
|
||||
**Zugänge werden gesperrt, nicht gelöscht.** Bautagebucheinträge, Prüfvermerke und die
|
||||
Bescheinigungen *sachlich richtig* und *rechnerisch richtig* müssen auch nach Jahren einer
|
||||
Person zuordenbar bleiben – bei bis zu 38 Jahren Aufbewahrung nach Bauschlussmeldung ist das
|
||||
keine Nebensache. Sperren beendet sofort alle Sitzungen.
|
||||
|
||||
**Aussperrschutz.** Der eigene Zugang kann weder gesperrt noch der eigenen Administration
|
||||
entzogen werden, und es muss stets mindestens ein aktiver Administrationszugang bestehen.
|
||||
Firmen mit bestehenden Verträgen lassen sich nicht stilllegen.
|
||||
|
||||
**Projektrollen werden nicht hier vergeben**, sondern im jeweiligen Projekt unter
|
||||
*Einstellungen → Beteiligte*. Das Administrationsrecht ist davon unabhängig und wirkt
|
||||
projektübergreifend – entsprechend sparsam vergeben.
|
||||
|
||||
### Absichtliche Sperren
|
||||
|
||||
Diese Einschränkungen sind keine Lücken, sondern Zweck der Sache:
|
||||
|
||||
Reference in New Issue
Block a user