Superset individual dashboard permission
Asked Answered
A

5

12

Is it possible to set permission on a specific dashboard? Like only 'user1' and 'user2' will view/see 'dashboard1' and others will not see 'dashboard1'.

Asur answered 1/1, 2019 at 8:26 Comment(0)
E
15

As of Spring/Summer of 2021, there is a feature flag, DASHBOARD_RBAC, to manage which roles can access the dashboard. See this GitHub issue for more details.

Non-owner user access can be managed two different ways:

  1. Dataset permissions - if you add to the relevant role permissions to datasets it automatically grants implicit access to all dashboards that uses those permitted datasets
  2. Dashboard roles - if you enable DASHBOARD_RBAC feature flag in superset_config.py then you be able to manage which roles can access the dashboard

Having dashboard access implicitly grants read access to the associated datasets, therefore all charts will load their data even if feature flag is turned on and no roles assigned to roles the access will fallback to Dataset permissions.

Estate answered 25/8, 2021 at 14:35 Comment(2)
How can I enable DASHBOARD_RBAC?Cockcroft
You can enable or disable feature flags from superset_config.py: superset.apache.org/docs/installation/configuring-superset/…Estate
A
10

Yes,

  1. Setup role (rules) : my trick is copy gamma rules, rename,

  2. edit permission, just type your dashboard name, youll find : datasource:your dashboard name, add that, that's it.

  3. Setup user, give rules (number 1)

Your new user will able to see the specific dashboard you point (number 2)

Appellative answered 26/7, 2019 at 5:18 Comment(2)
As of v0.37, it seems you can only see datasources and not dashboards when editing permissions.Northway
Yes, correct, sorry, for dashboard, go to dashboard list, edit owner, put your secondary user in that owner name box, as for datasets, its required permissions at user roles, if you just put the name without the permissions, some data may chart or data may not be able to loadAppellative
R
4

View Access
To control who sees a dashboard, define an access role for the datasource associated with the dashboard content.

For example:

  1. create role_1 with permissions datasource access on [my_db].[dash1_data].
  2. Assign user1 to role_1 and gamma (standard user profile).

dashboard1 is now presented to user1 assuming it's based on dash1_data.

Write Access
To control which non-admin users can edit dashboards set the Dashboard Owner.

Dashboard List > Edit [dashboard1] > Access Owners

Add individual users to the owner list to provide write access to individual dashboards.

Ref: https://superset.apache.org/docs/security/

Reprehension answered 23/7, 2023 at 7:23 Comment(0)
T
3

Steps to Give dashboard permission to the particular user.

Step - 1: enter image description here

Step - 2: Click the + button on your right

Step - 3: Give the Unique name in name field for identification for example demo_dashboard_reader and choose the data source in permissions field. then click save. enter image description here

Step - 4: Go to security and click list users (see the image in step-1). Filter the user you want to give permission of this dashboard and click edit. choose the role that you created in step-3 (demo_dahboard_reader) in my case and click save. Now only the chosen user can able to view the particular dashboard.

Step - 5: Repeat the step-4 to give permission to other users.

Tease answered 19/5, 2022 at 10:26 Comment(0)
U
2

Edit the dashboard and you will find the Owners sections, add the user names for whom you want to give the access. Now login with the user and you will able to see the dashboard.

Unctuous answered 2/8, 2019 at 10:46 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.