Forum Discussion
Can we add RLS with page level + region level together?
Hi Expert,
Can we add RLS with page level + region level together?
Scenario:
I have 5 pages in a Power BI report.
Out of these, 4 pages should be visible to clients, and the data on those pages should be restricted using Region-level RLS.
The internal team, however, should be able to see all 5 pages, with the 5th page fully visible only to internal users.
This 5th page should not be visible to clients under any condition.
Hi Tahreem24 ,
can you pls support here??
Uzi2019 ,
,Understand the Limitation Power BI does not support page-level security. RLS works only on data (rows), not on report pages. So page visibility cannot be controlled using RLS alone
Step 1: Create a Region-based RLS role. Filter data using:
[Region] = USERPRINCIPALNAME()
(or via a User-Region mapping table)This ensures clients see only their region’s data across pages
Step 2: Create an Internal Users Role: Create a separate role like Internal_Full_Access. Do not apply any data filter. Assign internal users to this role. Internal users will see full data
Step 3: Hide the Internal Page: Right-click the 5th page, Select Hide pageHidden pages: Are not visible in report tabs and Can only be accessed through navigation
Step 4: Create Navigation Buttons: Add buttons for page navigation
Create a DAX measure to identify internal users:
IsInternalUser =
IF(
USERPRINCIPALNAME() IN {
"[email protected]",
"[email protected]"
},
1,
0
)
Step 5: Control Button Visibility: Select the button for the 5th (internal) page
Go to Format → Action → Visibility
Bind it to the IsInternalUser measure. Button appears only for internal users
Step 6: Final Result, Clients see only 4 pages, Data filtered by Region RLS and Internal Users can see all 5 pages, Have full data access
Important Note:
Hidden pages are not real security
Sensitive data must still be protected using RLS
If strict security is required, create two separate reports using the same datasethttps://www.linkedin.com/pulse/page-tab-level-security-conditional-navigation-power-bi-a%25C5%259F%25C4%25B1ro%25C4%259Flu/
https://www.youtube.com/watch?v=AoyIeNKpUqU
2 Replies
- Tahreem24Super User
Uzi2019 ,
,Understand the Limitation Power BI does not support page-level security. RLS works only on data (rows), not on report pages. So page visibility cannot be controlled using RLS alone
Step 1: Create a Region-based RLS role. Filter data using:
[Region] = USERPRINCIPALNAME()
(or via a User-Region mapping table)This ensures clients see only their region’s data across pages
Step 2: Create an Internal Users Role: Create a separate role like Internal_Full_Access. Do not apply any data filter. Assign internal users to this role. Internal users will see full data
Step 3: Hide the Internal Page: Right-click the 5th page, Select Hide pageHidden pages: Are not visible in report tabs and Can only be accessed through navigation
Step 4: Create Navigation Buttons: Add buttons for page navigation
Create a DAX measure to identify internal users:
IsInternalUser =
IF(
USERPRINCIPALNAME() IN {
"[email protected]",
"[email protected]"
},
1,
0
)
Step 5: Control Button Visibility: Select the button for the 5th (internal) page
Go to Format → Action → Visibility
Bind it to the IsInternalUser measure. Button appears only for internal users
Step 6: Final Result, Clients see only 4 pages, Data filtered by Region RLS and Internal Users can see all 5 pages, Have full data access
Important Note:
Hidden pages are not real security
Sensitive data must still be protected using RLS
If strict security is required, create two separate reports using the same datasethttps://www.linkedin.com/pulse/page-tab-level-security-conditional-navigation-power-bi-a%25C5%259F%25C4%25B1ro%25C4%259Flu/
https://www.youtube.com/watch?v=AoyIeNKpUqU