-
Notifications
You must be signed in to change notification settings - Fork 14.2k
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
[SIP] Proposal for controlling View Only access to Dashboards #17914
Comments
@rajraousb do you mind formatting the post with Markdown headers, to make it easier to read? Also, instead of attaching a Note that Superset supports dashboard-specific access roles (#10408) via the |
New dependenciesNew database called dashboard_viewers
Migration Plan and Compatibility
|
Hey @rajraousb thank you for taking the time to plan and design this. Would you mind taking a look in #10408 If that is the case so go ahead and use it If not let me know what do you think is still missing |
Hi @amitmiran137 Thanks for the comment. 10408 is at role level. An easier solution is to expand the same logic as in co-owners which I have described in the proposal. Users can easily add/remove other users from Viewers and/or Owners list. Also, it's easy to populate a particular user's dashboard with all Dashboards for which they are Owners/Viewers. This will also help in #17913 where other users can be restricted access as well. By providing granularity at user level, it is possible to define access to each dashboard for specific users (like the Owners list) |
In general I think we should address data access control in some kind of a 2.0 version and generify all access management into a unified solution Here in this comment is the proposal we have tried pushing for a while now. is address access both on a user/role levels with the exact same mechanisem |
we have tried doing a full blown solution for a RBAC to any object in superset that can later be expanded to support individual users but got held back due to some issues: |
That is good for future versions, Amit. Looking forward to that. However for all the older versions we can use a solution like this, eliminating need for feature flags or specific roles per dashboard and also easier migration & management etc. This solution can work in 0.3x, 1.x versions and potentially others too. |
But you are referring to a solution that needs development and will only be supportrd in new releases |
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. For admin, please label this issue |
any plan to implement similar for version 2.x? |
Thanks for all your comments. |
Closing this out since the author noted it's implemented! Hooray! If there's a need to re-open it for further discussion or dialing-in, we certainly can. |
Motivation
Conditions for showing Dashboards in the UI
• Dashboards for which the current user is the creator
• Dashboards for which the current user is part of "Co-owner" as defined in the Dashboard creation/edit
• Dashboards which are published
There is no option available to share Dashboard with only Read Only capability
Proposed Change
This SIP aims to provide a new set of users called Viewers
• Provide capability to have Viewers field similar to Owners field
• Viewers will be able to see the Dashboards in their account when they click on Dashboards panel
• Viewers will have only Read-Only access (Co-owners have Read-Write access)
New or Changed Public Interfaces
• Add a new table similar to "Dashboard Owners", called "Dashboard Viewers". These tables are internal Superset database tables.
• This table creation can be created in the "superset db upgrade" hook
• Add UI component called "Viewers", which will populate "Dashboard Viewers" table based on dashboard_id and user_id of viewers selected from UI
• Add handlers for Viewers in UI (e.g. label, description, composite combo box etc.)
• Modify Dashboard model to add Viewers as extra attribute of "Dashboard Viewers" type linking dashboard and user table
• We will be enhancing the capability that we implemented for Co-Owner where in we will automatically add access to the underlying charts associated withe Dashboard to the Viewers
See Document:
SIP Viewers.pdf
New dependencies
New database called dashboard_viewers
Migration Plan and Compatibility
Create a db upgrade file
Rejected Alternatives
N/A
The text was updated successfully, but these errors were encountered: