# Multiple (different) dashboards for multiple users (with login)

**URL:** https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855
**Category:** General
**Tags:** node-red-dashboard
**Created:** [23 March 2023 08:32 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855 "2023-03-23T08:32:28Z")
**Posts on this page:** 16
**Page:** 1

<div class="post-metadata">

### Author: ![andre\_x](https://avatars.discourse-cdn.com/v4/letter/a/3d9bf3/32.png) [@andre\_x](https://discourse.nodered.org/u/andre_x)
#### Post date: [23 March 2023 08:32 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/1 "2023-03-23T08:32:28Z")

</div>

I need different users to view different dashboards (the users needs to be able to see only its own dashboard, not the other), I can password protect the dashboards with Cloudflare, but this can work only if the dashboard URL never changes, how can I do that?  
Do you know of any other better way?  
Thanks!

---

<div class="post-metadata">

### Author: ![smanjunath211](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/smanjunath211/32/95742_2.png) [@smanjunath211](https://discourse.nodered.org/u/smanjunath211)
#### Post date: [23 March 2023 11:18 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/2 "2023-03-23T11:18:00Z")

</div>

create multiple node-red instances and give different port numbers ?

---

<div class="post-metadata">

### Author: ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)
#### Post date: [23 March 2023 11:41 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/3 "2023-03-23T11:41:39Z")

</div>

I don't use cloudfare - but on the basis it can password protect single URI's  
Each Tab in the dashboard, does indeed have its own URI

First Tab - `http://x.x.x.x:1880/ui/#!/0`  
Second Tab - `http://x.x.x.x:1880/ui/#!/1`

and so on.

just set the dashboard to hide the title/nav bar at the same

This will get you close to a working solution  
I have not tested this of course

---

<div class="post-metadata">

### Author: ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)
#### Post date: [23 March 2023 11:57 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/4 "2023-03-23T11:57:28Z")

</div>

How does Node-red decide which is dashboard #0 ?

As I develop, deploy, develop ... precisely which dashboard is displayed at :1880/ui keeps on changing. Does that mean dashboard 0 changes too?

---

<div class="post-metadata">

### Author: ![smanjunath211](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/smanjunath211/32/95742_2.png) [@smanjunath211](https://discourse.nodered.org/u/smanjunath211)
#### Post date: [23 March 2023 12:05 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/5 "2023-03-23T12:05:59Z")

</div>

Isn't dashboard 0 is the first active tab listed in the right sidebar and dashboard 1 the next active dashboard ?  
there was a discussion in this forum to 'name' the dashboard tabs

> [@Accessing dashboard tabs by name](https://discourse.nodered.org/t/accessing-dashboard-tabs-by-name/73068):
>
> Hi @knolleary This topic has been discussed in the past, but I did not come across any closure. Our projects require dashboard tabs to be rendered into iFrames (via direct URLs) and not be selected from a menu. We currently use the .../ui/#!/\<Tab Id\> URL convention, which works well. However, the id represents the tab's position in the dashboard menu, and is sensitive to editor changes (tab reorder, empty/inactive tabs etc.). It would be preferable for us to address dashboard tabs by their nam…

---

<div class="post-metadata">

### Author: ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)
#### Post date: [23 March 2023 12:07 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/6 "2023-03-23T12:07:05Z")

</div>

When I sort the tabs in the side bar - i usually manually order them myself - and the ID's are list ordered - at least most of the time 😅

---

<div class="post-metadata">

### Author: ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)
#### Post date: [23 March 2023 12:18 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/7 "2023-03-23T12:18:12Z")

</div>

You can use any proxy service to achieve this with Dashboard. Though, of course, as has been pointed out, an instance of Node-RED only has a single instance of Dashboard. Other dashboards (lower-case "d") exist as well of course.

> [@jbudd](#):
>
> precisely which dashboard is displayed at :1880/ui keeps on changing

Actually, as there is only 1 Dashboard in a node-red instance, the same dashboard is always displaying - however, as a Single-Page Application, Dashboard's default tab may have changed. But worth remembering that an SPA is indeed a single "page". It is just that the framework is good at hiding/showing parts of the page to make it look like multiple pages.

---

<div class="post-metadata">

### Author: ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)
#### Post date: [23 March 2023 12:59 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/8 "2023-03-23T12:59:26Z")

</div>

Ok I used the wrong term.  
I guess that the OP's question is regarding dashboard tabs.

I have found that the "default" dashboard tab changes and I suspect that might imply that dashboard tab 0 is not fixed.

Therefore I suspect that calling dashboard tabs by name is safer than calling by the tab number.

---

<div class="post-metadata">

### Author: ![andre\_x](https://avatars.discourse-cdn.com/v4/letter/a/3d9bf3/32.png) [@andre\_x](https://discourse.nodered.org/u/andre_x)
#### Post date: [23 March 2023 13:31 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/9 "2023-03-23T13:31:12Z")

</div>

Since I don't like the idea of running multiple instances of Node Red to have multiple Dashboards, the idea of having multiple tabs with different (and static) url could work, but reading the other reply, this doesn't seems possible, correct?

---

<div class="post-metadata">

### Author: ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)
#### Post date: [23 March 2023 13:35 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/10 "2023-03-23T13:35:08Z")

</div>

node-red-dashboard v 3.4 has this feature

> Add ability to specify to start page by tab name in url

so it should be possible. (I am not sure that I understand that sentence from the release notes, I'm just now looking at what you can do with it)

---

<div class="post-metadata">

### Author: ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)
#### Post date: [23 March 2023 14:05 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/11 "2023-03-23T14:05:06Z")

</div>

> [@andre\_x](#):
>
> but reading the other reply, this doesn't seems possible, correct?

The main issue is that it won't be secure. All of the data in Dashboard is all part of the same page. So I don't think that using something like CloudFlare Zero Trust to apply a login to different users on different tabs won't really help.

---

<div class="post-metadata">

### Author: ![smanjunath211](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/smanjunath211/32/95742_2.png) [@smanjunath211](https://discourse.nodered.org/u/smanjunath211)
#### Post date: [23 March 2023 15:27 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/12 "2023-03-23T15:27:18Z")

</div>

> [@andre\_x](#):
>
> Since I don't like the idea of running multiple instances of Node Red to have multiple Dashboards,

I have only two, one for supervisor control other view only

---

<div class="post-metadata">

### Author: ![CanyonCasa](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/canyoncasa/32/76453_2.png) [@CanyonCasa](https://discourse.nodered.org/u/CanyonCasa)
#### Post date: [9 April 2023 23:37 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/13 "2023-04-09T23:37:49Z")

</div>

@smanjunath211 could you enlighten us as to how you do this? I assume one node-red instance functions normally in an admin role. But how does the second instance supporting a view only dashboard access state/data from the first instance?

---

<div class="post-metadata">

### Author: ![smanjunath211](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/smanjunath211/32/95742_2.png) [@smanjunath211](https://discourse.nodered.org/u/smanjunath211)
#### Post date: [10 April 2023 01:09 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/14 "2023-04-10T01:09:35Z")

</div>

May be you mis-understood me. i have two flows, one of them which has a 'write' access to the MySql database which, in the other flow i dont have any dashboard contents that 'write' to the database, only view.  
The original post asked for different dashboards so that users can be segregated, so having different instances, can do that. for example :1880 for suprevisor with flows with escalated controls and :1881 for just viewing the dashboard, without any 'change' actions.

so you can give password of :1880 to one and :1881 to others. so you have a fixed URL.

i dont have a setup to interact between instances, since i directly write and get information from a database. but i'm sure you can do interactions between instances with MQTT setup, there are information available in the forum.

---

<div class="post-metadata">

### Author: ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)
#### Post date: [10 April 2023 08:19 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/15 "2023-04-10T08:19:00Z")

</div>

> [@CanyonCasa](#):
>
> how does the second instance supporting a view only dashboard access state/data from the first instance?

Using MQTT is probably the easiest way. See this tutorial [MQTT Essentials - All Core Concepts Explained](https://www.hivemq.com/mqtt-essentials/)

---

<div class="post-metadata">

### Author: ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)
#### Post date: [9 June 2023 08:19 UTC](https://discourse.nodered.org/t/multiple-different-dashboards-for-multiple-users-with-login/76855/16 "2023-06-09T08:19:34Z")

</div>

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