Пример #1
0
 def query(self):
     """
     Takes a query_obj constructed in the client and returns payload data response
     for the given query_obj.
     """
     query_context = QueryContext(**json.loads(request.form.get('query_context')))
     security_manager.assert_datasource_permission(query_context.datasource, g.user)
     payload_json = query_context.get_data()
     return data_payload_response(payload_json)
Пример #2
0
 def query(self):
     """
     Takes a query_obj constructed in the client and returns payload data response
     for the given query_obj.
     """
     query_context = QueryContext(
         **json.loads(request.form.get('query_context')))
     security_manager.assert_datasource_permission(query_context.datasource,
                                                   g.user)
     payload_json = query_context.get_data()
     return data_payload_response(payload_json)
Пример #3
0
    def test_assert_datasource_permission(self, mock_datasource_access):
        datasource = self.get_datasource_mock()

        # Datasource with the "datasource_access" permission.
        mock_datasource_access.return_value = True
        security_manager.assert_datasource_permission(datasource)

        # Datasource without the "datasource_access" permission.
        mock_datasource_access.return_value = False

        with self.assertRaises(SupersetSecurityException):
            security_manager.assert_datasource_permission(datasource)
Пример #4
0
 def query(self):
     """
     Takes a query_obj constructed in the client and returns payload data response
     for the given query_obj.
     params: query_context: json_blob
     """
     query_context = QueryContext(
         **json.loads(request.form.get("query_context")))
     security_manager.assert_datasource_permission(query_context.datasource)
     payload_json = query_context.get_payload()
     return json.dumps(payload_json,
                       default=utils.json_int_dttm_ser,
                       ignore_nan=True)