The shape
Agents reading the lakehouse aren't humans on stable roles — they're short-lived and contextual, and the same agent code may legitimately serve different principals under different tasks. RBAC's static identity → role → permission chain encodes none of that; per-engine RLS doesn't survive ETL; tenant segregation forfeits the cross-source joins. Policy has to live at the query plane, gated under the agent's task-scoped identity at query time.