Files
Kundenverwaltung/templates/userkeys.tpl
T
adminandClaude Opus 5 6306bfba17 Login und Passkeys auf Prepared Statements umgebaut
- sites/start.php: ein Query statt zwei, Passwortvergleich per hash_equals
  in PHP statt im SQL, Updates per id. Die Eingaben gehen nicht mehr durch
  htmlspecialchars(): Passwoerter werden beim Anlegen roh gehasht, mit
  & < > " ' konnte man sich deshalb bisher nie anmelden.
- getUserSetting/updateUserSetting mit Platzhaltern; behoben: INSERT-Zweig
  rief mysqli_real_escape_string ohne Verbindung auf (Fatal Error),
  $mysqli_error als Variable, ungewolltes echo "update". Aufrufer escapen
  nicht mehr vor (sonst doppelt), settings.php: Tippfehler
  mysqi_real_escape_string beim Speichern von show_sks behoben, style nur
  als Dateiname ohne Pfad.
- authServer.php, addKey.php, userkeys.php, checkAdduser(): Platzhalter.
  Passkey-INSERT setzt lastAuth/authKey (Pflichtfelder im strikten Modus).
  addKey nur als reine Ziffern, sonst passte "12345678xyz" per Typumwandlung.
- checkLogin() entfernt: nirgends aufgerufen, fragte die nicht existierende
  Tabelle users ab.
- userkeys.tpl: Passkey-Name escaped.

Getestet gegen die migrierte Testdatenbank im strikten Modus.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 10:24:17 +02:00

20 lines
719 B
Smarty

{*<a href='?action=termin'><span class='cal' title="Passkeys verwalten" style='margin-left: 50%;'></span></a><br />*}
<div id="tabs">
{* ANZEIGE PANE *}
<div class='widthlimiter'>
<h3>{$user.vname} {$user.nname}</h3>
<div id='termcontainer-{$user.id}'>
{if $local == true}
<a href='addKey.php?id={$user.id}&add=new'><span class='addcenter' title="Neuer Passkey"></span></a><br />
{/if}
<table><tr><th>Name</th><th>Aktion</th></tr>
{foreach $keys as $key}
<tr>
<td>{$key.name|escape}</td>
<td><a href="?action=userkeys&amp;id={$user.id}&amp;del={$key.id}"><span class="del" title="Passkey löschen"></span></a></td>
</tr>
{/foreach}
</table>
</div>
</div>
</div>