zentrale Speicherung des FritzBox Passworts in FHEM

Begonnen von Markus Bloch, 03 Februar 2013, 15:44:54

Vorheriges Thema - Nächstes Thema

Markus Bloch

Hallo zusammen,

Anfang-Mitte Februar erhalte ich die intelligente Steckdose AVM DECT 200. Dazu wollte ich ebenfalls ein Modul dafür schreiben. Allerdings wird dafür das FritzBox Passwort höchstwarscheinlich benötigt, da ich die Daten über HTTP von der FritzBox holen will (siehe Link).

Nun habe ich auch noch eine Baustelle beim FB_CALLMONITOR wo man das FritzBox Telefonbuch ebenfalls mittels FritzBox Passwort von der Box holen kann.

Die Frage ist, da es sich ja hier um ein Passwort handelt, wollte ich das nicht als Attribut oder Define Argument übergeben.

Wie sollte man das am besten lösen?

Viele Grüße

Markus
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)

Martin Fischer

Hallo Markus,

> Die Frage ist, da es sich ja hier um ein Passwort handelt, wollte ich das nicht als
> Attribut oder Define Argument übergeben.
>
> Wie sollte man das am besten lösen?

schau dir mal mein modul 49_IPCAM.pm an. dort hat man die möglickeit die credentials entweder in der URL anzugben, was dazu führt, das sie im klartext lesbar sind. oder man kann in der URL die platzhalter {USERNAME} {PASSWORT} angeben, die dann ersetzt werden, wenn das attrib credential gesetzt ist. crendentials enthält dann einen dateipfad in dem die daten abgelegt sind.

nur mal so als anregung. vielleicht kannst du das ja als vorlage nutzen, auch wenn du keine crendentials via url nutzt.

gruss martin
--
Admin, Developer, Gründungsmitglied des FHEM e.V.

rudolfkoenig

Die Geschichte ist etwas komplizierter (kein basicAuth), dafuer gibt es eigentlich auch schon das FB_checkPw, was aber im Moment nur dann funktioniert, falls der User keine Extra-Benutzer angelegt hat. Falls doch, dann weiss ich noch nicht, was zu tun ist, wuerde mich aber interessieren.

Markus Bloch

Zitat von: Martin Fischer schrieb am So, 03 Februar 2013 18:48schau dir mal mein modul 49_IPCAM.pm an. dort hat man die möglickeit die credentials entweder in der URL anzugben, was dazu führt, das sie im klartext lesbar sind. oder man kann in der URL die platzhalter {USERNAME} {PASSWORT} angeben, die dann ersetzt werden, wenn das attrib credential gesetzt ist. crendentials enthält dann einen dateipfad in dem die daten abgelegt sind.

Alternativ is mir grad *e noch eingefallen, dass Passwort als Attribut zu setzen. Sobalt dieses Attribut gesetzt wird, soll mittels AttrFn das Passwort intern verschlüsselt im Device Hash abgelegt werden und das Attribut mit Sternchen quasi unkenntlich gemacht werden, was dann natürlich in der AttrFn durch eine entsprechende Regexp ( /^[*]+$/ ) abgefangen werden muss.

Was haltet ihr davon?
Developer für Module: YAMAHA_AVR, YAMAHA_BD, FB_CALLMONITOR, FB_CALLLIST, PRESENCE, Pushsafer, LGTV_IP12, version

aktives Mitglied des FHEM e.V. (Technik)