Skip to main content

Power BI

Needs Votes

Add a default role for row level security

Vote (281) Share
Jon Jowsey's profile image

Jon Jowsey on 17 Aug 2016 07:46:21

I want to be able to assign all users (including new ones) to a default role in RLS. Currently I have to assign each user to the role manually, and update the roles manually when users change.

This limits the ability to use RLS with a larger user base.

Comments (25)
Jon Jowsey's profile image Profile Picture

c5af0fc3 29d2-ea11-a812-000d3a579c38 on 30 Jul 2020 06:02:00

RE: Add a default role for row level security

Are we still talking about this? Or is there some new way to do this since my last comment over 2 years ago?

I still think it is funny that, there is all these 'data security' features that only work if you assign a role to someone. If someone doesn't have a role... all cool? Just give them all the data.

Go to all the effort to maintain hundreds of users, then that 1 that gets missed walks away with the entire dataset. Sweet.

Jon Jowsey's profile image Profile Picture

d4207411 2252-4d92-b5a6-035734540a13 on 06 Jul 2020 00:17:00

RE: Add a default role for row level security

Hi, its possible to do this! Just create a role that has full view, and in the service environment security settings add "Everyone" to the role.

Jon Jowsey's profile image Profile Picture

dc06f93a 5fb9-4770-80d9-2b1a67b025bb on 06 Jul 2020 00:15:20

RE: Add a default role for row level security

Yes! I agree. This feature is very important. Makes it easier for dynamic role management. I have created a dynamic relationship manager role in my Power BI report but it appears I have to manually add the users to the RM role before it allows them access.

Jon Jowsey's profile image Profile Picture

a3309361 99be-ea11-a812-000d3a8ddfb2 on 06 Jul 2020 00:07:48

RE: Add a default role for row level security

Agreed. Users should be able to create RLS and then immediately obtain the Reader role on a Dataset when published up to the service. If more than a reader role is needed then and only then would the solution owner would manage that exception. The norm should be the assignment of Reader. This would eliminate the multiple steps it takes and make it easier for all.

Jon Jowsey's profile image Profile Picture

c920053a cd0f-422d-8eb5-038b0b218d8b on 06 Jul 2020 00:07:18

RE: Add a default role for row level security

Internal users roles can easily be managed by O365 groups.
role called 'Department' - single member in PowerBI: department@company.com

managing actual users to be members of department@company.com distribution group will propagate to powerBI just fine.

me@company.com is member of department@company.com group - I am automatically member of 'Department' role (and see data based on this role DAX filtering)


If you are to grant read only access to anyone outside of the company - user is not
part of "@company.com" he/she will not match anything in local groups.

Solution would be to allow wildcards as members of custom role:

lets say custom role named "Everyone" - with one member: * - effectively matching everyone.
With this setup, role named 'None' as visible in PowerBI Desktop will have no members (every user is forced to be member of "Everyone" role - unless matching filter for other roles)

Another option would be to allow DAX filtering on 'None' role (currently not possible).

Jon Jowsey's profile image Profile Picture

010647a5 26cc-4093-8ddf-5b37db0f05e5 on 06 Jul 2020 00:03:28

RE: Add a default role for row level security

Please add this feature. This would help immensely.

Jon Jowsey's profile image Profile Picture

b75bf6db 949e-4640-9e1d-61278ff6fcf2 on 05 Jul 2020 23:58:25

RE: Add a default role for row level security

One option could be to use Office 365 Groups to assign all users to the RLS in the service.

Jon Jowsey's profile image Profile Picture

ebcf3e23 36f6-4253-94bf-75895f8aa3d9 on 05 Jul 2020 23:54:07

RE: Add a default role for row level security

To mimic a default role with no permissions, I am experimenting with importing two matching sets of data, one with the true (positive/negative) sign and one with the opposite.
In the 'Manage Roles', the specific role has a DAX filter to only include the correct data.
Thus with no role selected in the web service (the default) a zero sum is shown, but if a role is allocated the actual amount is.

Jon Jowsey's profile image Profile Picture

be6a3992 660d-4d8b-9272-88e9905e9610 on 05 Jul 2020 23:48:28

RE: Add a default role for row level security

is the RLS available in new workspace yet?

Jon Jowsey's profile image Profile Picture

71b939e8 75f3-4b52-a72c-06e94db884c0 on 05 Jul 2020 23:45:24

RE: Add a default role for row level security

I am in strong agreement with others on this feature. If someone grants access to a report (there are many at this point) but forgets to add them to a specific role/group, the current default behavior is to grant access to ALL data; a bit backwards logic if you ask me.