Forum Discussion
RLS using aduser name
- 1 year ago
If it is not working in the service, create a mapping table that links AD usernames to UPNs. Use USERNAME() in the service to retrieve the UPN, and apply a DAX lookup (LOOKUPVALUE) to map it to the corresponding AD username for RLS filtering.
- 1 year ago
Hi DiKi-I ,
we can also do thses steps Update your data source to store the full UPNs (e.g., [email protected]) in the ADUser field so that it directly matches what Power BI returns using USERNAME().
If that’s not possible, use a DAX expression in your RLS rule to extract just the username from USERNAME(), ensuring compatibility across both Desktop and Service.
You can use the following DAX to extract the short username from USERNAME()
Table[ADUser] =
VAR _user = USERNAME()
RETURN
IF(
FIND("@", _user, 1, 0) > 0,
LEFT(_user, FIND("@", _user) - 1),
_user
)Regards
Chaithanya.
Hi DiKi-I Yes, you can use AD usernames for RLS in Power BI if the column matches the USERNAME() format ([email protected]).
Create an RLS role with a filter like [aduser] = USERNAME().
Test using "View as Role" in Power BI Desktop.
Publish the report and assign roles in the dataset settings.