diff --git a/superset/views/core.py b/superset/views/core.py index aca096a4fe1e5..b40a98b7e8792 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -2657,6 +2657,9 @@ def fetch_datasource_metadata(self): @has_access_api @expose('/queries/') def queries(self, last_updated_ms): + return self.queries_call(last_updated_ms) + + def queries_call(self, last_updated_ms): """Get the updated queries.""" stats_logger.incr('queries') if not g.user.get_id(): diff --git a/superset/views/lyft.py b/superset/views/lyft.py index 944c68ba1cba9..0e1d54045330c 100644 --- a/superset/views/lyft.py +++ b/superset/views/lyft.py @@ -69,5 +69,14 @@ def sql_json(self): return json_error_response('{}'.format(e)) return self.sql_json_call(request) + @expose('/queries/') + @log_this + def queries(self, last_updated_ms): + try: + self.authorize() + except (UserDontExistException, SupersetException) as e: + return json_error_response('{}'.format(e)) + return self.queries_call(last_updated_ms) + appbuilder.add_view_no_menu(Lyft) diff --git a/tests/security_tests.py b/tests/security_tests.py index c6266c6febc2f..a749aac3f79c9 100644 --- a/tests/security_tests.py +++ b/tests/security_tests.py @@ -251,6 +251,7 @@ def test_views_are_secured(self): ['Lyft', 'theme'], ['Lyft', 'welcome'], ['Lyft', 'sql_json'], + ['Lyft', 'queries'], ] unsecured_views = [] for view_class in appbuilder.baseviews: