Cannot enable anonymous users to view dashboards
See original GitHub issueI have a dashboard that I want to share publicly. I followed the related steps from the documentation, also linked in https://github.com/apache/incubator-superset/issues/4102: https://superset.incubator.apache.org/security.html#public
Specifically, what I did was:
- Set
PUBLIC_ROLE_LIKE_GAMMA = True
insuperset_config.py
- Added
datasource access
permissions to thePublic
role, for the datasource from where data in the dashboard is retrieved
Expected results
Anonymous (i.e., not logged in) users shall be able to see the dashboard by opening its URL in a web browser.
Actual results
Anonymous (i.e., not logged in) users are not able to see the dashboard by opening its URL in a web browser: they are redirected to the login page showing an Access Denied
error.
I also tried to add some more permissions to the Public
user (see screenshots) and managed to display the dashboard, but not the charts in it. However I don’t think it’s the right way to do it, it should work as documented.
Screenshots
Access denied error:
Permissions that I tried to add to Public
, together with the datasource access:
What I saw after adding such permissions:
Environment
- superset version: built from
master
Checklist
Make sure these boxes are checked before submitting your issue - thank you!
- I have checked the superset logs for python stacktraces and included it here as text if there are any.
- I have reproduced the issue with at least the latest released version of superset.
- I have checked the issue tracker for the same issue and I haven’t found one similar.
Issue Analytics
- State:
- Created 4 years ago
- Comments:23 (8 by maintainers)
Top GitHub Comments
I’m using this config-set for Public access
[can dashboard on Superset, can explorev2 on Superset, can explore json on Superset, can csrf token on Superset, can csv on Superset, menu access on Dashboards, all datasource access on all_datasource_access, all database access on all_database_access, can list on DashboardModelViewAsync, can list on DashboardModelView]
You just need to replace all_database_access and all_datasource_access for the public datasource and database.
I followed the instruction in the link mentioned above (https://superset.apache.org/security.html#public) and now the
public
role is filled with the same permission as the Gamma one plus all thedatasource
. But still, the system return “Access is Denied”!