Mit der Veröffentlichung der neusten Betriebssysteme von Apple wurde es für mich Zeit, KeePass (bzw. dem in Electron geschriebenen Fork KeeWeb in meinem Falle) nach vielen Jahren den Rücken zu kehren. Während ich in KeeWeb mich noch selbst um die Geräteübergreifende Synchronisation kümmern musste, übernimmt fortan das ganze Apple über die iCloud. Dabei kann ich jedoch selbst auf Windows auf meine Passwörter zurück greifen.
Viele Passwörter, keine Zeit!
Also brauchte ich eine Lösung, wie ich die knapp 850 Passwörter aus dem KeePass-Format in die Apple-Lösung zu importieren. Dankenswerter Weise stellt Apple einen eigenen Import bereit, welcher eine .csv-Datei annimmt. Leider ist die .csv-Datei aus KeePass in einer falschen Reihenfolge, deswegen habe ich ein kleines Skript geschreiben, was den Import zu Apple Passwords erheblich vereinfacht.
Alle hier vorgestellen Methoden benötigen Python 3.2 als Skriptsprache installiert.
Methode 1: Keepass (Windows) CSV-Export
Diesen Weg habe ich gewählt. Mit einer Keepass 2 installation auf Windows kann eine CSV-Datei exportiert werden, diese kann mit einem simplen Python-Skript in das richtige Format gebracht werden:
- Installation von Keepass 2 unter Windows
- Öffnen der Keepass-Datenbank
- Export der Keepass-Datenbank als .csv
- Dieses Skript in dem selben Ordner und mit angepassten Dateinamen starten
- In Apple Passwords unter MacOS 15 den Import starten
Methode 2: .kdbx-Datei direkt transformieren
Es ist auch möglich, mit der Library „pykeepass“ den direkten Weg von der .kdbx-Datei zu einer für den import geeigneten CSV-Datei zu nehmen. Dafür reicht es, die Keepass-Datenbank-Datei in den selben Ordner wie dieses Script zu legen, die Dateinamen anzupassen und nach dem Start des Skripts das Passwort in der CLI einzutippen. Sollte sich Python zuerst mit dem Start des Skriptes weigern, sollte überprüft werden, ob die Library entsprechend installiert ist. Wenn das nicht der Fall ist, kann dies einfach mit pip install pykeepass
nachgeholt werden.
Methode 3: .xml-Export von Keeweb zu .csv
Als dritte Option bleibt der Export von Keeweb in einer sehr ausführliche .xml-Datei, welche ebenfalls zu einer CSV-Datei verarbeitet werden kann. Dafür wird in Keeweb der Export als .xml-Datei gewählt, dann mit diesem Skript nach dem Anpassen der Dateinamen mit Python die passende .csv-Datei generiert.
Warnung
Ich kann nur davon abraten, die .csv-Datei länger als umbedingt notwenig auf der Festplatte zu behalten. Schließlich sind in dieser Datei alle Passwörter unverschlüsselt aufgeführt.
Darüber hinaus ist anzumerken, dass die OTP-Codes aktuell nicht übertragen werden, da Keeweb meines Wissens nach keine OTP-Codes generieren kann.