From 6a139856c27c073c93c3293bd4f9559ef41c85bb Mon Sep 17 00:00:00 2001 From: sascha Date: Mon, 7 Sep 2026 10:11:26 +0200 Subject: [PATCH] feat(control): add detailed history to stream-control/templates/history.html --- stream-control/templates/history.html | 53 +++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 stream-control/templates/history.html diff --git a/stream-control/templates/history.html b/stream-control/templates/history.html new file mode 100644 index 0000000..154b8c6 --- /dev/null +++ b/stream-control/templates/history.html @@ -0,0 +1,53 @@ +{% extends 'base.html' %}{% block eyebrow %}AUDIT & FORENSIK{% endblock %}{% block heading %}History{% endblock %}{% block content %} +
+
SESSIONS{{ history.sessions|length }}letzte Datensätze
+
BEKANNTE IPs{{ history.ips|length }}letzte Datensätze
+
POLICY-EVENTS{{ history.events|length }}Block / Freigabe
+
CONTROL-AKTIONEN{{ audit|length }}lokales Audit
+
+{% if history_error %}
!

{{ history_error }}

{% endif %} + +
+
+ + + + +
+ +
+ +
+

CENTER AUDIT

Ausgeführte Änderungen

{{ audit|length }} Einträge
+
+ {% for row in audit %}{% else %}{% endfor %} +
ZeitAktionDetailsQuelleErgebnis
{{ row.ts|dt }}{{ row.action }}{{ row.detail }}{% if row.error %}{{ row.error }}{% endif %}{{ row.remote_ip }}{{ 'OK' if row.ok else 'FEHLER' }}
Noch keine Control-Aktionen protokolliert.
+
+ +
+

PLAYBACK

Session-History

{{ history.sessions|length }} Einträge
+
+ {% for row in history.sessions %}{% else %}{% endfor %} +
ZuletztBenutzerTitelGerätStandort / ASNIPTrafficStatus
{{ row.last_seen|dt }}{{ row.user_name }}{{ row.series or row.title }}{% if row.series %}{{ row.title }}{% endif %}{{ row.device }}{{ row.client }}{{ [row.city,row.country]|select|join(', ') }}{{ row.asn }}{{ row.ip }}{{ row.bytes|bytes }}{{ 'AKTIV' if row.active else 'BEENDET' }}
Keine Sessions vorhanden.
+
+ +
+

CLIENT FORENSIK

IP-History

{{ history.ips|length }} Einträge
+
+ {% for row in history.ips %}{% else %}{% endfor %} +
ZuletztBenutzerIPGerätStandort / ASNKlasseSichtungen
{{ row.last_seen|dt }}zuerst {{ row.first_seen|dt }}{{ row.user_name }}{{ row.ip }}{{ row.device }}{{ row.client }}{{ [row.city,row.country]|select|join(', ') }}{{ row.asn }}{{ row.last_classification }}{{ row.sightings }}{{ row.limited_sightings }} limitiert
Keine IP-History vorhanden.
+
+ +
+

POLICY AUDIT

Blocks & Ereignisse

{{ history.blocks|length }} Blocks · {{ history.events|length }} Events
+
+
+ {% for row in history.blocks %}{% else %}{% endfor %} +
ZeitBenutzer / IPGrundStatus
{{ row.blocked_at|dt }}{{ row.user_name or '—' }}{{ row.ip }}{{ row.reason }}{{ 'AKTIV' if row.active else 'ABGELAUFEN' }}
Keine Blocks.
+
{% for row in history.events %}
{{ row.kind }}
{{ row.user_name or 'System' }}{{ row.ts|dt }} · {{ row.detail }}
{% else %}

Keine Policy-Ereignisse.

{% endfor %}
+
+
+ +{% endblock %}