[gelöst] Google Authenticator zur Verbesserung der Sicherheit als FHEM Modul

Begonnen von pandabear_de, 14 Januar 2017, 00:42:04

Vorheriges Thema - Nächstes Thema

pandabear_de

2 Topics

1. Funktioniert das QR bei Dir? Wenn ich es in GoogleAuthenticator fotographiere bekomme ich ein InvalidBarcode. Auch den den Du eben hier gepostet hast

2. Ich habe das Gefühl, dass Du den QR in FHEM siehst... Was habe ich da falsch gemacht? Den Fehler bokomme ich immer wenn ich einen neuen Schlüssel generiert habe. Wenn ich einmal für einen Schlüssel den Link bereinigt habe (Leertaste rein und wieder raus an der Stelle) funktionieren die nächsten Aufrufe wieder.

(Siehe Anhang)

betateilchen

Die QR funktionieren bei mir alle. Allerdings funktioniert die Anzeige (als Grafik) in fhem noch nicht zuverlässig.

Aktuell arbeite ich an einem Umbau, denn laut Google API Beschreibung ist für die QR Generierung eigentlich eine andere URL zuständig. Mal schauen, ob es damit besser funktioniert.

Die Anzeige in fhem funktioniert nicht so ohne weiteres, da ist noch ein bisschen Aufwand nötig.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

pandabear_de

Mit einem Neustart des Mobiltelefons hat es jetzt funktioniert.... Sorry...

betateilchen

#18
Im Anhang eine Version mit QR Code Anzeige direkt nach dem "set ... new"

In der Version kann man auch mit dem Attribut "ga_qrsize" die Ausgabegröße des QR-Codes in Pixel angeben.


attr gAuth ga_qrsize 400x400


Fehlt das Attribut, wird 200x200 verwendet.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!


betateilchen

Ich habe das Modul eben in fhem unter ./contrib eingecheckt, solange wir daran basteln.
Die jeweils aktuelle Version kann aus SVN gezogen werden.

Die hier im Thread von mir geposteten Dateien werde ich entfernen, um kein Versions-Wirrwarr zu verursachen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

pandabear_de

Nach dem jetzt alles so perfekt ist...

Darf ich aus meinen Telegram Notify Script wie folgt die Prüfung durchführen?

Telegram:
Auth 123456
oder später
Heizung WZ an 123456


elsif ($EVTPART1 eq 'Auth') {

      my $GivenToken = substr $EVENT, -6;
        my $GAuthResult = GoogleAuth_Get("", "GoogleAuth", "check", $GivenToken);
        if ($GAuthResult eq '1') {
          log 3, "ChatMessageNotify: GoogleAuth Token gültig.";
          # Aktionen zum ausführen
          fhem("set teleBot send @" . $msgpeer . " " . " Token gültig!");
        }
        else {
          log 3, "ChatMessageNotify: GoogleAuth Token ungültig!";
          fhem("set teleBot send @" . $msgpeer . " Token ungültig!");
        }

       
    }

pandabear_de


betateilchen

bitte nicht so:


my $GAuthResult = GoogleAuth_Get("", "GoogleAuth", "check", $GivenToken);


sondern so:


my $GAuthResult = fhem("get GoogleAuth check $GivenToken");

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#24
Zitat von: pandabear_de am 15 Januar 2017, 00:19:23
OK, werde einen Link zum SVN setzen...

Zum Anschauen: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/98_GoogleAuth.pm

Zum Runterladen: ganz unten auf der Seite bei "In anderen Formaten herunterladen" -> "Ursprüngliches Format" auswählen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Der QR Code wird jetzt direkt auf der Detailseite des definierten device angezeigt.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

pandabear_de

#26
Genial gelöst! Danke, Danke, Danke!

Gleich poste ich eine aktualisierte Version des ersten Postings, mit allen Anpassungen, damit die erste Berührung für Neugierige möglichst gut verläuft.

pandabear_de

Ich wollte gerade mit Wiki schon Mal anfangen, leider kann ich dort aber kein Benutzerkonto anlegen (Berechtigungen).

betateilchen

Ich bin (bekanntermaßen) kein Freund des Wiki. Vor allem nicht, solange ein Modul noch in der Entwicklung ist und sich ggf. noch das Eine oder Andere ändert.  8)
Die Entwicklungsgeschichte habe ich inzwischen mit ins Modul gepackt und eingecheckt. Und es gibt neue Attribute und readings :)

Aber das Modul braucht erstmal noch eine commandref-Doku, zumindest in Englisch.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!