KeePass2 für Windows automatisch entsperren beim Login
Für Linux gab es hier im Blog schon eine Anleitung. Nachdem ich nun auch mehr unter Windows auf dem Desktop machen muss, habe ich die selbe Methodik auch hier recherchiert.
Sicherheit unter Windows?
Dem ganzen muss eins vorangestellt sein: Anders als Linux ist Windows nicht quelloffen und viele der dort eingesetzten Programme sind es auch nicht. Das macht das Auffinden von Sicherheitslücken ungleich schwieriger. Das betrifft sowohl unbeabsichtigt vorhandene Sicherheitsprobleme und absichtlich eingebaute Hintertüren in der Software. Es schützt einen also lediglich das Vertrauen in die Summe der installierten Anwendungen. Ob es nun also der Sicherheit zuträglich ist, eine zentrale Datenbank mit Benutzernamen, Kennwörtern und den passenden URLs dazu, unter Windows nicht nur vorzuhalten und zu entschlüsseln sondern das auch noch automatisch, sollte vor Einsatz einer solchen Lösung gewissenhaft überlegt werden!
Wohin geht denn das Kennwort?
Damit so ein Passwort-Speicher sicher ist, muss er mit einem Schlüssel gesichert sein, der dem Computer nicht ohne weiteres verfügbar ist, schließlich käme das dem Zurücklassen des metaphorischen Schlüssels im metaphorischen Schloss gleich.
KeePass kann die Datenbank doch schon mit dem Windows-Konto sichern!
Richtig, KeePass kommt vom Hersteller bereits mit einer Funktion, eine Datenbank mit Hilfe der Windows-Anmeldeinformationen zu sichern. Diese Funktion hat allerdings den Haken, dass alle für eine Datenbank verwendeten Schlüssel kombiniert vorhanden sein müssen, d.h. die Windows-Anmeldeinformationen werden zum Entsperren immer notwendig sein, also auch auf anderen Betriebssystemen wie Android oder Linux, was selbstverständlich nicht möglich ist.
Setzt man anders herum ein Kennwort, so ist es auch unter Windows stets notwendig, ob nun Anmeldeinformationen von Windows bereitgestellt werden oder nicht. Die eingebaute Funktionalität von KeePass ist also nicht für portablen Einsatz auf mehreren Geräten geeignet.
Das eigentliche Kennwort kapseln
Die Lösung funktioniert genauso wie unter Linux (in meiner Anleitung beschrieben): Man hinterlegt das Kennwort für die Datenbank im vom Betriebssystem gesicherten Speicher und lässt beim Anmelden im Benutzerkonto nicht nur KeePass starten sondern auch direkt die Datenbank entsperren. Der vom Betriebssystem bereitgestellte Speicher ist durch das eigene Kennwort zur Anmeldung gesichert. Dieses sollte also ausreichend sicher sein!
Praktische Umsetzung
Verwendet wird das Plugin WinKee von der KeePass-Homepage. Die Installation ist einfach:
- KeePass starten
- Nicht das Kennwort für die Datenbank eingeben!
- stattdessen bei der Auswahl unter
keyfile
die Optionwinkee
auswählen - erst jetzt das Kennwort für die Datenbank eingeben
Beim Anmelden automatisch starten
- In den Einstellungen von KeePass unter
Integration
die OptionRun KeePass at Windows startup (current user)
wählen. Dadurch wird ein Eintrag in der Registry erstellt. - RegEdit öffnen
-
HCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
ansteuern und rechts den Eintrag von KeePass um den Pfad zur Datenbank und zur Angabe deskeyfile
ergänzen:"C:\Program Files (x86)\KeePass Password Safe 2\KeePass.exe" "%HOMEPATH%\keepass.kdbx" -keyfile:"WinKee - locally encrypted access"
Beim nächsten Anmelden sollte KeePass jetzt also automatisch entsperrt werden.