Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.
Hi lovely community,
I've a Report with RLS Group invited "All Users" cause I've a dynamic RLS Table saved in Dataverse with all Users should able to see RLS content.
RLS Filter in Power BI: [Email] = USERPRINCIPALNAME()
Works fine for the most Guest Accounts, but we have some Users with "mail#max.mustermann@company.com" instead of "max.mustermann@company.com" as Userprincipalname(). Don't know why there's a prefix of "mail#".
So I just created a new column with "mail#" + Email in our RLS Table for the "right" Userprincipalname.
New RLS Filter in Power BI: [Email] = USERPRINCIPALNAME() || [Custom Email] = USERPRINCIPALNAME()
But also with this its not working.
So I guess its not cause the Guest Account is not a part of "All Users". I also use "All Users" for Report Access and this is working.
So why RLS is not working with the Custom Mail and why there are Guest Accounts with "mail#" ?
BR,
Sven
Solved! Go to Solution.
Have found my fail, just had wrong RLS Formula. "Userprincipalname()" instead of Userprincipalname() 😕
Anyway it's hard to understand where the "right" Userprincipalname() in Dataverse is saved or whether theres another name not saved in Dataverse.
Hi,
According to your requirement, I think you can refer to this blog and check if it can be helpful:
https://superfarb.com/power-bi-row-level-security-while-sharing-with-external-users/
Thank you very much!
Best Regards,
Community Support Team _Robert Qin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @P3Sven
What I have done in the past is to have both versions of the email/UPN in the RLS that way which ever one gets passed still works?
Hi @GilbertQ ,
I've created RLS Role with 3 options out of systemuser dataverse table:
- dominname (normaly = USERPRINCIPALNAME(), but for Guest Account something with #EXT)
- internalemail (just the normal emailadress)
- custom mail (Custom added column with mail# + email, cause its not in systemuser dataverse table available, but is showing in Power BI as USERPRINCIPALNAME())
Unfortunately my custom email column is not working although USERPRINCIPALNAME () is showing exactly the same and should be filtered in RLS.
BR,
Sven
Have found my fail, just had wrong RLS Formula. "Userprincipalname()" instead of Userprincipalname() 😕
Anyway it's hard to understand where the "right" Userprincipalname() in Dataverse is saved or whether theres another name not saved in Dataverse.
Hi,
Glad to hear that you have solved your problem by yourself, would you like to mark your own reply as a solution so that others can learn from it too?
Thanks in advance!
How to Get Your Question Answered Quickly
Best Regards,
Community Support Team _Robert Qin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.