Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Support, Fragen und Diskussionen zur HomeMatic App für Android

Moderator: Co-Administratoren

Antworten
Michael G.
Beiträge: 5
Registriert: 31.10.2023, 00:09
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal

Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Michael G. » 31.10.2023, 00:20

Moin allerseits,
bisher war ich in diesem Forum nur lesend aktiv.
Vorweg mein Dank an alle, die dieses Forum aktiv mitgestalten. Es ist für Einsteiger & Anfänger eine hervorragende Quelle. Ich habe meine Fragen immer schon beantwortet gefunden und brauchte deshalb noch nicht zu posten.
Der Aktualität geschuldet werde ich nun doch aktiv.

Die Verbindung von Tinymatic zur CCU war bisher ohne Authentifizierung. Bei der jetzigen Methode mittels Token gibt es nun mehr Sicherheit.
Bei Verlust des Gerätes mit der App vielleicht aber auch eine Neue Sicherheitslücke.
Daher dieser Beitrag:

Meine CCU ist eine Raspberrymatic. (Nachfolgend im Text einfach CCU)
Gestern habe ich die Raspberrymatic aktualisiert auf: 3.71.12.20231020
Die Zusazsoftware wie folgt aktualisiert: CUx Daemon auf 2.11
XML-API auf 2.2
Die Tinymatic auf die Version: 2.19.7(2197000).

Ein Nutzer in der CCU war bereits angelegt, mit diesem Nutzer habe ich in Tinymatic einen Token generiert. (Dazu in Tinymatic HTTPS und in der CCU HTTPS temporär abgeschaltet, wie im Forum “XML-API Addon 2.0“ von „Gryf“ vorgeschlagen)
Der Token wurde erfolgreich generiert, der Zugriff von Tinymatic auf die CCU war hergestellt.

Nun war mir der Nutzername nicht eindeutig genug und das Passwort etwas zu kurz.

Beides habe ich zunächst in der CCU Benutzerverwaltung geändert. Der ursprüngliche Benutzer war somit nicht mehr vorhanden.
Mit Tinymatic war trotzdem noch der Zugriff auf die CCU möglich. Auch beenden und neustarten der App änderte nichts am Zugriff auf die CCU.
Nun habe ich den Nutzer in der CCU Benutzerverwaltung komplett gelöscht. Nun steht nur noch der Admin Zugang zur CCU. Trotzdem ist mit Tinymatic der Zugriff auf die CCU noch möglich.

Erst das Deinstallieren und neu Installieren der App beendete den Zugriff auf die CCU. Obwohl nach der Neuinstallation der App noch die richtige IP Adresse hinterlegt war, gab es kein Zugriff auf die CCU.

Soweit so gut. Nun stellt sich mir die Frage, warum ist das so?

Wie Johann schon geschrieben hatte wird Benutzername und Passwort nach Generierung des Tokens nicht mehr abgefragt. Und verworfen.
Damit ist nun der Zugriff auf die CCU zwar ohne Authentifizierung nicht möglich, aber wenn das Gerät mit der App verloren geht, welche Möglichkeit habe ich dann den Zugang zur CCU zu sperren?

Den Benutzer kann ich in der CCU Benutzerverwaltung löschen, wo aber muss der Token der App gelöscht werden?
Geht das überhaupt in der CCU?

Gruß Michael

Silverstar
Beiträge: 389
Registriert: 11.02.2020, 12:14
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 100 Mal
Danksagung erhalten: 69 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Silverstar » 31.10.2023, 07:56

Der Benutzername, der zum Login in die Webui verwendet wird, wird nur einmalig benötigt, um den token zu generieren, welcher dann zur Authentifizierung genutzt wird.

Daher ist der Benutzername hinterher egal und die App kann weiterhin auf die CCU zugreifen.

Zum Löschen der token siehe tokenrevoke.cgi https://github.com/homematic-community/XML-API

Michael G.
Beiträge: 5
Registriert: 31.10.2023, 00:09
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Michael G. » 31.10.2023, 13:38

Vielen Dank für die sehr schnelle hilfreiche Antwort,
das Löschen der Token funktioniert so einwandfrei und ist einfacher als ich ursprünglich dachte.

Ich habe sämtliche Token gelöscht (in meinem Fall waren es zwei) und dann mit dem gewünschtem neuen Benutzernamen + Passwort neu angelegt.

Da die XMLAPI den Token immer als

Code: Alles auswählen

<token desc="tinymatic">[TOKEN_ID]</token>
anlegt, kann es bei mehreren TOKEN_ID schwierig werden, diesen eindeutig zuzuordnen.
Ich selbst nutze einen Paswort Manager. Dort sind die in der CCU angelegten Benutzer + Passwort angelegt, nun auch der passende Token dazu.

Es erleichtert das gezielte löschen des Tokens falls nötig.

Silverstar
Beiträge: 389
Registriert: 11.02.2020, 12:14
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 100 Mal
Danksagung erhalten: 69 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Silverstar » 31.10.2023, 13:49

Das token hat keinerlei Beziehung zum Nutzer und umgekehrt!
Der Benutzer wird von tinymatic nur abgefragt, um ein token erstellen zu können. Danach darf die Anwendung mit dem token "alles" (was die API erlaubt).

Aber klar, so kannst du dir speichern, welches Endgerät welches token hat. Das Editieren der description des tokens ist bisher glaube ich nicht vorgesehen.

Michael G.
Beiträge: 5
Registriert: 31.10.2023, 00:09
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Michael G. » 01.11.2023, 13:21

Ok, wieder was gelernt.

Wenn ich die Zuordnung von Endgerät zu entsprechenden Token dokumentiere, währe es dann möglich ein z.B. verlorengegangenes Gerät "auszusperren", indem der zugehörige Token gelöscht wird?

Das war eigentlich der Hintergedanke der Dokumentation.
Das Editieren der description des tokens ist bisher glaube ich nicht vorgesehen.
Das hatte ich irgendwo in den Beiträgen auch schon rausgelesen. Ein Nutzer hatte wohl den gleichen Hintergedanken.

Benutzeravatar
jmaus
Beiträge: 9953
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 471 Mal
Danksagung erhalten: 1927 Mal
Kontaktdaten:

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von jmaus » 01.11.2023, 15:43

Michael G. hat geschrieben:
01.11.2023, 13:21
Wenn ich die Zuordnung von Endgerät zu entsprechenden Token dokumentiere, währe es dann möglich ein z.B. verlorengegangenes Gerät "auszusperren", indem der zugehörige Token gelöscht wird?
Genau so ist es. Dafür müsste allerdings TinyMatic am besten statt einer einfachen "tinymatic" description am besten etwas wie "tinymatic_AA:BB:CC:DD:EE" oder so als kombination des namens der app zusammen mit der mac-adresse oder dem namen des gerätes dort vermerken, denn ansonsten weiss man ja nicht welches gerät das ist.
Michael G. hat geschrieben:
01.11.2023, 13:21
Das Editieren der description des tokens ist bisher glaube ich nicht vorgesehen.
Das hatte ich irgendwo in den Beiträgen auch schon rausgelesen. Ein Nutzer hatte wohl den gleichen Hintergedanken.
Momentan gibt es keine Nutzerfreundliche Art&Weise die Description anzupassen, zu ändern, ja.
RaspberryMatic 3.75.7.20240601 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

Michael G.
Beiträge: 5
Registriert: 31.10.2023, 00:09
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Michael G. » 01.11.2023, 17:07

Meine Frage habe ich nun selbst klären können. :D

Zur Tinymatic Token Generierung:

Auf einem Benutzer konnte ich mit den Zugangsdaten (trotz mehrfacher versuche) keinen zweiten Token generieren. (Das Benutzerkonto in der CCU war noch angelegt und der erste generierte Token war noch aktiv)
Ich habe in der Benutzerverwaltung der CCU dann einen neuen Nutzer hinzugefügt.
Erst mit diesem neuen Nutzer konnte ein neuer Token generiert werden.

Also: Je Nutzer = ein Token

Die Nutzer können in der Benutzerverwaltung der CCU nach Generierung des Tokens gelöscht werden. Der Zugriff über die App ist weiterhin möglich.
Der Token ist für das jeweilige Gerät generiert und kann, wenn man dokumentiert hat welcher Token zu welchem Gerät gehört, gezielt NUR für dieses Gerät gelöscht werden.
Das Gerät hat anschließend sofort kein Zugriff mehr!

Ich habe anschließend mit den gleichen Benutzernamen und Passwort das in der CCU gelöschte Benutzerkonto wieder angelegt. Auf dem Endgerät (ein Tablet) habe ich mit diesem Benutzernamen und Passwort wieder einen neuen Token generiert.

Dieser neue Token unterscheidet sich von dem zuvor generierten Token trotz identischem Passwort und Benutzernamen in der CCU.

Ich habe das oben beschriebene mit zwei Smartphones und ein Tablet ausprobiert. Ich musste auf allen drei Geräten durch die neue Version von Tinymatic die Generierung des Tokens eh durchführen, da bot sich das probieren direkt an.

Der Test erfolgte mit einer Raspberrymatic Firmwareversion: 3.71.12.20231020, XML-API 2.2 und Tinymatic Version 2.19.7(2197000)

Michael G.
Beiträge: 5
Registriert: 31.10.2023, 00:09
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 2 Mal

Re: Tinymatic 2.19.7 - Token Authentifizierung in Raspberrymatic nicht löschbar

Beitrag von Michael G. » 01.11.2023, 17:16

Vielen Dank Jens.
Genau so ist es. Dafür müsste allerdings TinyMatic am besten statt einer einfachen "tinymatic" description am besten etwas wie "tinymatic_AA:BB:CC:DD:EE" oder so als kombination des namens der app zusammen mit der mac-adresse oder dem namen des gerätes dort vermerken, denn ansonsten weiss man ja nicht welches gerät das ist.
Ich habe in einem Passwortmanager jeweils mit Benutzernamen und Passwort sowie das Gerät anschliessend den entsprechend vergebenen Token hinterlegt.
Benutzername und Passwort sowie das Benutzerkonto in der CCU wird anschliessend zwar nicht mehr benötigt. Aber das macht dann auch nichts wenn die Daten da stehen bleiben.

Gruß Michael

Antworten

Zurück zu „TinyMatic“