{% 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 %}
|