Hallo Leute,
da ich dazu aufgefordert wurde meine Idee
hier mal kund zu tun, hab ich mal auf die schnelle mit Paint ne kleine Skizze gebastelt die meine Erklärung unterstützen soll.
vorschlag Auth.png
Ich denke die Grafik erklärt wie das System funktionieren soll.
smartVISU soll dazu die Zugriffe kontrollieren. Bedeutet man müsste eine Benutzer/Gruppen-verwaltung bauen. Als Admin sollte man wissen, dass man besser alle Rechte an Gruppen aufhängt. Somit würde man dann z.B. im HTML Code der Visu den Zugriff auf das Objekt über Nennung der Gruppe und deren Rechte definieren.
Dabei trackt die Visu immer über die SessionID welche Rechte der Benutzer hat (anonym oder angemeldet). Dementsprechend werden die Elemente entweder ausgeblendet oder gar nicht ausgeliefert. Bei jeder Zugriff auf den Websocket von smarthome.py wird die Session-ID von der VISU mitübermittelt (möglich wären noch andere Identifizierungsmerkmale wie IP / UserAgent usw). Smarthome frägt nun bei der Visu nach, ob diese Session-ID aich authorisiert ist. Am besten wäre das irgendwie zu Cachen (für 2-3 Sekunden, k.a....) um die Performance zu verbessern. Wenn man es cacht, sollte die Visu auch in der lage sein, smarthome.py über die änderung der SessionID mitzuteilen, also wenn z.B. der Benutzer sich eingeloggt hat (oder der Benutzer bekommt immer eine neue Sitzungs-ID, nach dem Login).
Naja, das ist mein Gedanke... was haltet ihr von der Idee? Sollte doch realisierbar sein
Gruß,
Thomas
da ich dazu aufgefordert wurde meine Idee

vorschlag Auth.png
Ich denke die Grafik erklärt wie das System funktionieren soll.
smartVISU soll dazu die Zugriffe kontrollieren. Bedeutet man müsste eine Benutzer/Gruppen-verwaltung bauen. Als Admin sollte man wissen, dass man besser alle Rechte an Gruppen aufhängt. Somit würde man dann z.B. im HTML Code der Visu den Zugriff auf das Objekt über Nennung der Gruppe und deren Rechte definieren.
Dabei trackt die Visu immer über die SessionID welche Rechte der Benutzer hat (anonym oder angemeldet). Dementsprechend werden die Elemente entweder ausgeblendet oder gar nicht ausgeliefert. Bei jeder Zugriff auf den Websocket von smarthome.py wird die Session-ID von der VISU mitübermittelt (möglich wären noch andere Identifizierungsmerkmale wie IP / UserAgent usw). Smarthome frägt nun bei der Visu nach, ob diese Session-ID aich authorisiert ist. Am besten wäre das irgendwie zu Cachen (für 2-3 Sekunden, k.a....) um die Performance zu verbessern. Wenn man es cacht, sollte die Visu auch in der lage sein, smarthome.py über die änderung der SessionID mitzuteilen, also wenn z.B. der Benutzer sich eingeloggt hat (oder der Benutzer bekommt immer eine neue Sitzungs-ID, nach dem Login).
Naja, das ist mein Gedanke... was haltet ihr von der Idee? Sollte doch realisierbar sein

Gruß,
Thomas
Kommentar