From 548bab93e55f6e514557571d3c9da9b1c1d59c35 Mon Sep 17 00:00:00 2001
From: Server-Bibliothek <server-bibliothek@lokal>
Date: Do, 23 Jul 2026 15:07:49 +0200
Subject: [PATCH] Zugriffsbeschraenkung: voller Zugriff nur lokal am Server, Netzwerk nur Software-Anforderung + Zugriffsprotokoll
---
templates/zugriffslog.html | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 56 insertions(+), 0 deletions(-)
diff --git a/templates/zugriffslog.html b/templates/zugriffslog.html
new file mode 100644
index 0000000..11edb5e
--- /dev/null
+++ b/templates/zugriffslog.html
@@ -0,0 +1,56 @@
+{% extends "base.html" %}
+{% block title %}Zugriffsprotokoll – Server-Bibliothek{% endblock %}
+{% block content %}
+
+<div class="page-head">
+ <div>
+ <p class="eyebrow">Sicherheit</p>
+ <h1>Zugriffsprotokoll</h1>
+ </div>
+</div>
+
+<div class="hint" style="margin-bottom:16px;">
+ Zeigt jeden Zugriff auf die Software-Anforderung von außerhalb des Servers.
+ Ein echter Windows-Benutzername lässt sich ohne Domänen-Integration nicht
+ zuverlässig ermitteln – hier stehen IP-Adresse, per Reverse-DNS ermittelter
+ Rechnername (falls auflösbar) und der selbst angegebene Name.
+</div>
+
+{% if eintraege %}
+<div class="panel" style="padding:0; overflow-x:auto;">
+ <table class="data-table" style="margin:0;">
+ <thead>
+ <tr>
+ <th style="padding-left:22px;">Zeitpunkt</th>
+ <th>Herkunft</th>
+ <th>IP-Adresse</th>
+ <th>Rechnername</th>
+ <th>Angegebener Name</th>
+ <th style="padding-right:22px;">Aktion</th>
+ </tr>
+ </thead>
+ <tbody>
+ {% for e in eintraege %}
+ <tr>
+ <td style="padding-left:22px;">{{ e.zeitpunkt.replace("T", " ") }}</td>
+ <td>
+ {% if e.lokal %}
+ <span class="badge status-ok">Lokal (Server)</span>
+ {% else %}
+ <span class="badge status-warnung">Netzwerk</span>
+ {% endif %}
+ </td>
+ <td>{{ e.ip_adresse or "–" }}</td>
+ <td>{{ e.rechnername or "–" }}</td>
+ <td>{{ e.angegebener_name or "–" }}</td>
+ <td style="padding-right:22px;">{{ e.aktion }}</td>
+ </tr>
+ {% endfor %}
+ </tbody>
+ </table>
+</div>
+{% else %}
+<div class="empty-state">Noch keine Zugriffe protokolliert.</div>
+{% endif %}
+
+{% endblock %}
--
Gitblit v1.9.3