#005 Revisionssicheres Protokoll #5

Closed
opened 2026-10-12 15:12:34 +00:00 by florian.wilde · 0 comments
Owner

Ziel

Jede Aktion landet im Protokoll; Einträge sind unveränderlich und über eine Hash-Kette verbunden.

Aufgaben

  • Modell Protokoll mit Akteur, Aktion, Host, Zielbenutzer, Fingerprint, Diff, Ergebnis
  • DB-Trigger verbietet UPDATE/DELETE
  • Hash-Kette (SHA-256 über Vorgänger + Inhalt), Prüffunktion
  • Redaction: Private Keys/Passwörter können nicht hineingeraten

Akzeptanzkriterien

  • Test: UPDATE/DELETE schlägt fehl
  • Test: manipulierte Zeile wird von der Prüfung gefunden

Abhängigkeiten

#003

Notizen / Entscheidungen

  • Modell, Trigger und Hash-Kette entstanden schon mit #003 (Datenbankregeln); hier kommen Service, Schwärzen und Prüffunktion dazu.
  • Diff und Details werden geschwärzt, bevor sie in die Datenbank gehen (schwaerzen() aus #006).
  • „privat“ ist kein Schwärz-Stamm mehr: privateVerwendungen, privatePfad usw. sind Angaben, die das Protokoll gerade braucht. Geschwärzt werden nur Felder, die den Schlüssel selbst tragen (privateKey*, privatVerschluesselt, dekVerschluesselt …) – und jeder PEM-Block im Inhalt.
  • Ansicht, CSV-Export und Syslog folgen mit #027.

Quelle: docs/issues/005-protokoll.md – dort wird dieses Issue gepflegt.

## Ziel Jede Aktion landet im Protokoll; Einträge sind unveränderlich und über eine Hash-Kette verbunden. ## Aufgaben - [x] Modell `Protokoll` mit Akteur, Aktion, Host, Zielbenutzer, Fingerprint, Diff, Ergebnis - [x] DB-Trigger verbietet UPDATE/DELETE - [x] Hash-Kette (SHA-256 über Vorgänger + Inhalt), Prüffunktion - [x] Redaction: Private Keys/Passwörter können nicht hineingeraten ## Akzeptanzkriterien - [x] Test: UPDATE/DELETE schlägt fehl - [x] Test: manipulierte Zeile wird von der Prüfung gefunden ## Abhängigkeiten #003 ## Notizen / Entscheidungen - Modell, Trigger und Hash-Kette entstanden schon mit #003 (Datenbankregeln); hier kommen Service, Schwärzen und Prüffunktion dazu. - **Diff und Details werden geschwärzt**, bevor sie in die Datenbank gehen (`schwaerzen()` aus #006). - **„privat“ ist kein Schwärz-Stamm mehr:** `privateVerwendungen`, `privatePfad` usw. sind Angaben, die das Protokoll gerade braucht. Geschwärzt werden nur Felder, die den Schlüssel selbst tragen (`privateKey*`, `privatVerschluesselt`, `dekVerschluesselt` …) – und jeder PEM-Block im Inhalt. - Ansicht, CSV-Export und Syslog folgen mit #027. --- Quelle: `docs/issues/005-protokoll.md` – dort wird dieses Issue gepflegt.
florian.wilde added this to the v0.1.0 milestone 2026-10-12 15:12:34 +00:00
florian.wilde added the sicherheit label 2026-10-12 15:12:34 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: florian.wilde/sshkeyvault#5