March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I have a cost code column and a Email ID column. User should get the access of cost code against the email ID and in case of * against the email id user to should have access to all the cost code.
Costcode | Email-ID |
12365 | abc@outlook.com |
87907 | bcd@outlook.com |
26543 | abc@outlook.com |
* | bgy@outlook.com |
283920 | bcd@outlook.com |
bgy@outlook.com should have access to all the cost code.
Solved! Go to Solution.
@ShivaSDutta , refer if this can help
Power BI- Row Level Security: Handle ALL, UserPrincipalName: https://youtu.be/KVLEnIUo4pc
I am assuming you are filtering another table that has data by cost code. You would apply a filter to that table by reading from the UserAccess table like this.
VAR _UPN = USERPRINCIPALNAME()
RETURN
IF (
LOOKUPVALUE (
UserAccess[Costcode],
UserAccess[Email-ID], _UPN,
UserAccess[Costcode], "*"
) = "*",
TRUE,
'Table'[CostCode]
= LOOKUPVALUE (
UserAccess[Costcode],
UserAccess[Email-ID], _UPN,
UserAccess[Costcode], 'Table'[CostCode]
)
)
I have attached my sample file for you to look at. You can test the RLS by using View As on the modeling ribon
You can see that bgy can see all rows:
but bcd can only see the subset he is assigned to
@ShivaSDutta , refer if this can help
Power BI- Row Level Security: Handle ALL, UserPrincipalName: https://youtu.be/KVLEnIUo4pc
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
User | Count |
---|---|
93 | |
92 | |
91 | |
79 | |
49 |
User | Count |
---|---|
160 | |
144 | |
103 | |
72 | |
55 |