e21f00ce44d9b7ff1e1df44d162ceefe2ff2b64b
Bernd Wurst merge passkeys feature

Bernd Wurst authored 5 months ago

1) <?php
2) /*
3) This file belongs to the Webinterface of schokokeks.org Hosting
4) 
5) Written by schokokeks.org Hosting, namely
6)   Bernd Wurst <bernd@schokokeks.org>
7)   Hanno Böck <hanno@schokokeks.org>
8) 
9) This code is published under a 0BSD license.
10) 
11) Nevertheless, in case you use a significant part of this code, we ask (but not require, see the license) that you keep the authors' names in place and return your changes to the public. We would be especially happy if you tell us what you're going to do with this code.
12) */
13) 
14) require_once('passkey.php');
15) require_once('inc/icons.php');
16) require_role(ROLE_SYSTEMUSER);
17) require_once('inc/javascript.php');
18) javascript("passkey_ajax.js");
19) 
20) title("Sichere Anmeldung");
21) 
22) output('<p>Sie können die Anmeldung bei ' . config('company_name') . ' passwortlos einrichten.</p>');
23) 
24) output('<h3>Anmeldung mit Passkeys / FIDO2</h3>');
25) 
Hanno Böck Text zu Passskeys kompakter...

Hanno Böck authored 5 months ago

26) output('<p>Mit der Passkeys-Technologie können Sie die Anmeldung mit einem Hardware-Security-Modul oder mit Ihrem Mobilgerät als Schlüssel verwenden.</p>
27) <p>Bei der Anmeldung mit einem Passkey müssen Sie weder Benutzername noch Passwort eingeben, sondern werden direkt im Webinterface eingeloggt.</p>
28) <p><strong>Bitte beachten Sie:</strong> Passkeys funktionieren nur im Webinterface. Für die Anmeldung per SSH müssen Sie für eine vergleichbare Sicherheit und Komfort einen SSH-Schlüssel in Ihrem Benutzeraccount hinterlegen.</p>');
Bernd Wurst merge passkeys feature

Bernd Wurst authored 5 months ago

29) 
Hanno Böck Text zu Passskeys kompakter...

Hanno Böck authored 5 months ago

30) output('<p>Zur Absicherung Ihres Zugangs empfehlen wir Folgendes: Richten Sie den SSH-Zugang über einen SSH-Key und den Zugang zu diesem Webinterface über einen Passkey ein. Setzen Sie ein komplexes, neues Passwort zur Wiederherstellung im Fehlerfall und heben Sie dieses Passwort an einem sicheren Ort auf (z. B. ausgedruckt im Tresor). Schalten Sie dann den SSH-Login über Passwort ab. So steht Ihnen das Passwort als Sicherheit zur Wiederherstellung Ihres Zugangs in diesem Webinterface zur Verfügung.</p>');
Bernd Wurst merge passkeys feature

Bernd Wurst authored 5 months ago

31) 
32) $passkeys = list_passkeys();
33) if (count($passkeys) > 0) {
34)     output('<h4>Aktuell eingerichtete Passkeys:</h4>');
35)     foreach ($passkeys as $pk) {
36)         $hostname = '';
37)         $rpId = $_SERVER['HTTP_HOST'];
38)         if ($pk['rpId'] != $rpId) {
39)             $hostname = 'Nur gültig für die URL <strong>' . $pk['rpId'] . '</strong>!<br>';
40)         }
41)         output("<p class=\"passkey\">Gerätebezeichnung: <strong>{$pk['handle']}</strong><br>hinzugefügt am {$pk['setuptime']}<br>" . $hostname . internal_link("delete_passkey", icon_delete() . "Diesen Passkey löschen", "id={$pk['id']}") . "</p>");
42)     }
43) }
44) 
Hanno Böck more HTML fixes

Hanno Böck authored 3 months ago

45) output('<p><label for="passkey_handle">Bezeichnung für neuen Passkey:</label> <input id="passkey_handle" type="text" size="20"> <button onclick="passkey_register()">Passkey registrieren</button></p>