Forum Discussion
Data level security on Power BI
ok. Lets assume I have this column in the table.
So for each user I have PM Code tagged to it in the table.
And I want to equate this PM Code fetched for each user to the Actual project table which has PM Code in it so that it just shows his Projects.
Would you be able to guide me with the steps .?
Thanks for your help.
Regards,
Akash
I actually tried creating roles with table[username]= USERNAME( )
But not sure how to assign the PM Code for the logged in user to the actualy Project table which has PM Info.
- Anonymous8 years agoNot applicable
You don't do anything with the PM code. Presumably you have a relationship between this user table and your regular data, and you normally use it to filter and categorize that data. I don't know your specific case but for example imagine that your user table is a table of sales reps where each username is accompanied by a matching email address column, and linked to that table you have a table of sales data. You show sales results by sales rep in your report. If you create a "sales rep" security role with a filter on the user table of usertable[email address] = USERNAME(), then publish that report and add each of the sales rep users to that security role on the service, when they look at the report it will show only their individual sales results and nobody else's.
- akj27848 years agoPost Partisan
ok. I see your point but that's not exactly what I want to implement.
Thank you for your guidance.
In my actual project table I don't have user name/email. All I have is PM Code. I have to drive the dashboard based on that and apply the data level security so that each PM can see only his Projects in the dashboard.
- Tadder8 years agoHelper II
You need to add a column to your users table for their Office365 email account. Then do a lookup in the row level security based on that. USERPRINCIPALNAME() returns the current users login (email address). So the filter is on PM_CODE. LOOKUPVALUE() is looking for the PM_CODE of the USERPRINCIPALNAME and uses the EMAIL_ADDRESS as a cross reference. The result of this is filtering for PM_CODE = AKASH or whoever the logged in user is.
It would look like this: