Dynamic Column-Level Security (CLS) Filtering for OneLake Security in Microsoft Fabric SQL Endpoints
Dynamic Column Filtering for OneLake Security CLS in Lakehouse SQL Endpoints
We would like to propose an idea regarding the current behavior of Column-Level Security (CLS) in Microsoft Fabric OneLake Security when accessing data through Lakehouse SQL Endpoints.
During troubleshooting and validation sessions with Microsoft Support, we confirmed that CLS is functioning as currently designed. However, we observed a limitation in how CLS behaves during schema validation and query execution from SQL Endpoints and Power BI semantic models.
Current Behavior
After creating a OneLake Security role with CLS restrictions:
Restricted columns are still exposed within the Lakehouse SQL Endpoint schema metadata.
The SQL Endpoint appears to scan or validate the complete table schema before executing the query.
If restricted columns exist in the semantic model, query definition, or metadata discovery process, queries fail with permission errors such as:
“SELECT permission was denied on the column…”
This happens even when users only intend to access permitted columns.
Because of this behavior:
- Power BI semantic models may fail during refresh or schema discovery.
- Developers must manually exclude restricted columns.
- Separate materialized lake views must be created for different security personas.
Additional maintenance and governance overhead is introduced.
Example Scenario
Table:
- EmployeeID
- EmployeeName
- Salary
- SSN
CLS Restriction:
- Salary
- SSN
Expected Experience:
Users should automatically see only:
- EmployeeID
- EmployeeName
Current Experience:
Restricted columns remain discoverable through schema validation, and queries may fail instead of dynamically filtering unauthorized columns.
Proposed Idea
We propose that the Lakehouse SQL Endpoint dynamically recognize the authenticated user principal and automatically apply CLS filtering during schema discovery and query execution.
In this approach:
Restricted columns would automatically be hidden from the schema presented to the user.
Only authorized columns would appear during Power BI schema discovery, SSMS access, and SQL query execution.
Queries and semantic models would execute successfully without requiring developers to redesign datasets or manually remove restricted columns.
Benefits
This approach would:
- Simplify Power BI and SQL development.
- Reduce dependency on materialized lake views.
- Improve enterprise scalability for self-service BI.
- Reduce maintenance overhead.
- Provide a more intuitive CLS experience for Lakehouse SQL Endpoints.
Currently, the materialized lake view workaround is functional, but it introduces operational complexity for enterprise environments managing multiple datasets, users, and security roles.
We believe dynamic CLS-aware schema filtering would significantly improve the usability and enterprise adoption of OneLake Security in Microsoft Fabric Lakehouses and SQL Endpoints.
Thank you for considering this idea.
Recent ideas
Automatically match PowerBI chart background color to Powerpoint slide background color
Export PowerBI to PowerPoint slide - Can we define the PowerBI export background color to automatically match the PowerPoint slide background color ? By Default, the PowerBI background color is Whi...jim_chan4 hours agoNew MemberNew7Views0likes0CommentsNew Card Visual - Alignment of Reference Label Values
The latest Power BI Desktop version I'm allowed to use at work currently is Version 2.154.1260.0 (May 2026), so if this request has already been implemented in later versions, please disregard. Othe...nk685f5 hours agoAdvocate INew8Views0likes0CommentsSupport QR codes in the barcode scanner in the Power BI app
I was surprised to find that the barcode scanner inside of a Power BI report in the mobile app only supports scanning barcodes, not QR codes. Our warehouse uses QR codes everywhere, so I cannot use t...Jaap_O_RFH13 hours agoNew MemberNew15Views0likes0CommentsAllow enabling Lakehouse Schemas on an existing Lakehouse
Right now Lakehouse Schemas can only be turned on when you first create a Lakehouse. If you already have one running in production and later decide you need schemas, there is no way to enabled them o...AlessioAndriulo13 hours agoAdvocate INew14Views0likes0Comments