Second Dashboard for Children/Guests?

Hi,

I'm looking a long time.. but can't find what looking for... :frowning:
I want a second Dashboard Page or something, with a extra Adress for my Chirldren/Guests.
They should not have access to all my settings.

I think it have to be possible, but i can not find..

Can you tell me how i can solve this Problem? I'm very frustated :frowning:

Thanks before!! :wink:

You can only have 1 Dashboard per Node-RED instance. So you can either run multiple instances and get them talking to each other.

Or you could use uibuilder which allows as many separate uibuilder nodes as you like, each with their own URL and also supports multiple actual pages in a single node too. So you have lots of options/

I use the following flow, which is started with an inject node right after deployment:

[{"id":"e6879ce3cc7665a8","type":"ui_ui_control","z":"5a1cda5786c898fd","name":"","events":"all","x":220,"y":160,"wires":[["d13b05329a308a1f"]]},{"id":"d13b05329a308a1f","type":"switch","z":"5a1cda5786c898fd","name":"","property":"socketip","propertyType":"msg","rules":[{"t":"eq","v":"192.168.100.100","vt":"str"},{"t":"eq","v":"192.168.100.110","vt":"str"},{"t":"cont","v":"192.168.110","vt":"str"},{"t":"else"}],"checkall":"false","repair":false,"outputs":4,"x":370,"y":160,"wires":[["d0d437c5e154f813"],["e155743531cc6ad9"],["8bb72a750118893e"],["99242d61621763db"]],"outputLabels":["","","Intern","Extern"]},{"id":"316feeb6936aee4e","type":"ui_ui_control","z":"5a1cda5786c898fd","name":"","events":"all","x":820,"y":180,"wires":[[]]},{"id":"8bb72a750118893e","type":"change","z":"5a1cda5786c898fd","name":"Third","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\t    \"group\": {\t        \"show\": [\t            \"BSB_BSB\",\t            \"BSB_Third\"\t        ],\t        \"hide\": [\t            \"BSB_Main\",\t            \"BSB_Second\"\t        ]\t    }\t}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":220,"wires":[["316feeb6936aee4e"]]},{"id":"99242d61621763db","type":"change","z":"5a1cda5786c898fd","name":"Extern","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\t    \"group\": {\t        \"hide\": [\t            \"BSB_Main\",\t            \"BSB_BSB\",\t            \"BSB_Third\",\t            \"BSB_Second\"\t        ]\t    }\t}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":280,"wires":[["316feeb6936aee4e"]]},{"id":"d0d437c5e154f813","type":"change","z":"5a1cda5786c898fd","name":"Main","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\"group\":{\"show\":[\"BSB_BSB\",\"BSB_Main\"],\"hide\":[\"BSB_Second\",\"BSB_Third\"]}}","tot":"json"}],"action":"","property":"","from":"","to":"","reg":false,"x":530,"y":140,"wires":[["316feeb6936aee4e"]]},{"id":"e155743531cc6ad9","type":"change","z":"5a1cda5786c898fd","name":"Second","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\t    \"group\": {\t        \"show\": [\t            \"BSB_BSB\",\t            \"BSB_Second\"\t        ],\t        \"hide\": [\t            \"BSB_Main\",\t            \"BSB_Third\"\t        ]\t    }\t}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":540,"y":180,"wires":[["316feeb6936aee4e"]]}]

In the Switch node, I check for the IP address of the computer, smartphone, tablet, whatever and in the next change nodes I enable or disable different tabs.

2 Likes

Just remember not to use that for security, only for user convenience. Dashboard is a Single Page App (SPA) so sensitive data will often be in the browser memory even if it is not in the visible UI.

Also remember that a users IP address can easily change within a working session. Eg moving with a laptop from a desk to WiFi, being behind an load-balanced edge, or on a DHCP refresh. IP address alone is not an indication that the same device or user is communicating.

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.