This is an automated email from the ASF dual-hosted git repository.

michaelsmolina pushed a commit to branch 3.1
in repository https://gitbox.apache.org/repos/asf/superset.git

commit 7ab62e1aaa03b01f8ecb2a5accf9e31b4566359a
Author: Michael S. Molina <[email protected]>
AuthorDate: Thu Feb 15 16:26:33 2024 -0500

    fix: Plain error message when visiting a dashboard via permalink without 
permissions (#27132)
---
 superset/views/core.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/superset/views/core.py b/superset/views/core.py
index 9ad2f63fdc..3e895e6b4b 100755
--- a/superset/views/core.py
+++ b/superset/views/core.py
@@ -47,6 +47,7 @@ from superset.async_events.async_query_manager import 
AsyncQueryTokenException
 from superset.commands.chart.exceptions import ChartNotFoundError
 from superset.commands.chart.warm_up_cache import ChartWarmUpCacheCommand
 from superset.commands.dashboard.importers.v0 import ImportDashboardsCommand
+from superset.commands.dashboard.exceptions import DashboardAccessDeniedError
 from superset.commands.dashboard.permalink.get import 
GetDashboardPermalinkCommand
 from superset.commands.dataset.exceptions import DatasetNotFoundError
 from superset.commands.explore.form_data.create import CreateFormDataCommand
@@ -880,6 +881,9 @@ class Superset(BaseSupersetView):  # pylint: 
disable=too-many-public-methods
         except DashboardPermalinkGetFailedError as ex:
             flash(__("Error: %(msg)s", msg=ex.message), "danger")
             return redirect("/dashboard/list/")
+        except DashboardAccessDeniedError as ex:
+            flash(__("Error: %(msg)s", msg=ex.message), "danger")
+            return redirect("/dashboard/list/")
         if not value:
             return json_error_response(_("permalink state not found"), 
status=404)
         dashboard_id, state = value["dashboardId"], value.get("state", {})

Reply via email to