Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nutzen des MQTT-Brokers für andere Geräte freigeben #1586

Open
DerHerrW opened this issue Apr 25, 2024 · 2 comments
Open

Nutzen des MQTT-Brokers für andere Geräte freigeben #1586

DerHerrW opened this issue Apr 25, 2024 · 2 comments

Comments

@DerHerrW
Copy link
Contributor

Der MQTT-Broker der OpenWB stellt ein wertvolles Feature für die Hausautomatisierung dar. Andere Geräte konnten diesen bisher nutzen, um Daten zu übertragen:
https://forum.openwb.de/viewtopic.php?t=8654
https://forum.openwb.de/viewtopic.php?t=7451

Durch die sinnvolle Härtung der OpenWB-Topics wird die Möglichkeit entfernt, außerhalb des openwb-Zweiges Messages zu posten.

Ich sehe durch das acl-Format von mosquitto auch keine einfache Möglichkeit, dies zu ändern: Bei Anlegen einer acl wird alles gesperrt, was nicht erlaubt ist; im aktuellen master-Zweig ist damit der Zugriff auf alles außerhalb openwb gesperrt. Wenn man global alle Topics readwrite definiert, ist openwb wieder schreibbar, egal ob man davor oder danach den Zugriff auf read beschränkt.

Als Autor des oben genannten soc_helpers sehe ich nur wenige Möglichkeiten:

  1. Ich setze voraus, daß jeder Anwender einen eigenen mqtt-broker aufsetzt, was sich die meisten Interessierten abschrecken wird und zusätzlich mein kleines Programm wieder verkompliziert, weil es zwei broker überprüfen und handhaben muß.
  2. Ich stelle einen PR, mit dem der Zweig "wican/#" mit readwrite freiegegeben wird; möglicherweise kann man dann auch gleich einen Zweig "others/#" ebenfalls freigeben? (Anmerkung: Der wican erlaubt nicht, daß Topic, unter dem er postet, frei zu wählen, er kann aber user und passwort nutzen)

Was sagt das OpenWB-Team zu Punkt 2? Gibt es möglicherweise andere Möglichkeiten, die ich übersehe? Kann man per user einen Unterzweig vergeben, der freigegeben wird, so dass man einem user "wican" den Unterzweig "others/" zuweisen kann, wo er dann seine Topics schreibt und liest?

@DerHerrW
Copy link
Contributor Author

DerHerrW commented Apr 25, 2024

Ich bemerke gerade auf einem anderen Rechner, daß der Zugriff für Fremdnutzung mit einer Ergänzung möglich ist:

# Grundsätzlich Schreibenfür user in ihrem Bereich erlauben
pattern readwrite %u/#

Dann könnte sich ein Fremdgerät mit einem passenden usernamen anmelden und könnte den Broker nutzen. Wäre das denkbar? Vermutlich müsste dann noch der Nutzer "openwb" gesperrt werden, damit das Überschreiben von openwb-Topics nicht wieder möglich wird?

@DerHerrW
Copy link
Contributor Author

DerHerrW commented May 2, 2024

Nach dem die neuste wican-Firmware die Vorgabe des zu schreibenden branches erlaubt, kann eine Freigabe eines "others"-branches durch den mosquitto-Broker die Lauffähigkeit wieder herstellen.
Pull-Request ist gestellt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant