rusackas commented on code in PR #43391:
URL: https://github.com/apache/superset/pull/43391#discussion_r3927836332


##########
superset/security/manager.py:
##########
@@ -876,6 +879,19 @@ def _native_filter_request_modified(query_context: 
"QueryContext") -> bool:
     # intentionally deny every value-returning term below.
     allowed_columns, allowed_metrics = targets
 
+    # The samples/drill_detail preparers replace a query's columns with every
+    # column on the datasource - bypassing the target-column allowlist below
+    # entirely - so reject those result types outright; a native filter never
+    # legitimately needs them.
+    if any(

Review Comment:
   Good catch, fixed in ce5e707. Drill By (slice_id 0 sentinel plus a source 
chart_id) is only supposed to read the groupby dimensions raise_for_access 
already validated as drillable, but the samples/drill_detail preparers ignore 
groupby and swap in every column, so I now reject those result types there. 
Drill to Detail (no slice_id/chart_id at all) is untouched since it already 
grants the full dataset by design.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to