Skip to main content
Microsoft Idea

Power BI

Under Review

Security - Ability to maintain source security for reports published on BI Sites

Vote (1830) Share
Ramu Kodemala's profile image

Ramu Kodemala on 03 Mar 2015 07:53:46

The general requirement is that visualizations (Power View, SSRS etc...) must not circumvent existing policies, or introduce yet another set of security policies on top of those already implemented at the source.

* For example, a visualization of sales data needs to reflect the policy that account managers can only read sales data for their region.
* For performance reasons, this is enforced at the source by injecting predicates into the query based on the end users identity. If identities for end users are not passed down the process chain into the data layer, it leaves us little option but to publish individual reports for every region, which results in an explosion of complexity and numbers of reports, or move the whole model to BISM and manage the policy in yet another place (namely the BISM model).

Impact
blocking migration to SPO/BI Sites. At least 412 Site Collections with more than 600 Power Views. Impacting Adoption or migration for majority of BPUs - e.g. Finance, LCA, HR, etc

Administrator on 16 Aug 2020 02:15:30

Hey all! We've continued to make progress here, so I wanted to update this thread with our current capabilities for maintaining security on dashboards/reports. As always, all of this information can be found in our Row-Level Security (RLS)documentation: https://powerbi.microsoft.com/en-us/documentation/powerbi-admin-rls/ > If you have set up RLS in Analysis Services, Power BI will send the signed-in user's credentials to Analysis Services, and respect the RLS rules set up on the on-premises model. > Separately, you can set up RLS in Power BI for data sources that you import or connect to via DirectQuery. This process starts in PBI Desktop, where you define roles, and write DAX to constrain what data these roles can see. As part of this process, can you use the UserPrincipalName () DAX function to get the current signed in user's UPN (e.g. joe@contoso.com). Then, once you publish to service, you can assign users to these roles. Does the above meet your requirements? Please let us know via comments or e-mail. Those of you who requested that the identity of the signed in Power BI user be pass through to Azure SQL, SQL DB, DWH, etc.: we hear you - that is under consideration. Thanks, -Sirui

Comments (146)
Ramu Kodemala's profile image Profile Picture

PlymouthRock on 16 Aug 2020 03:54:32

RE: Security - Ability to maintain source security for reports published on BI Sites

This is also a deal breaker for us. We currently are working on a Multi-Tennant enterprise app using RLS in SQL Azure. All of our security is defined with Security Predicates in the database and we are adding the User ID in session context in our web application.

We have started testing PowerBI embedded with Direct Query. With the ability to set User data in the Access Token, it shouldn't be that difficult to have PowerBI set session context after it connects to the database.

It should be configurable to allow the developer to set any session context variable they choose.

This would keep security where it belongs in the SQL database.

Ramu Kodemala's profile image Profile Picture

Pieter on 16 Aug 2020 03:53:17

RE: Security - Ability to maintain source security for reports published on BI Sites

It should be possible to use the identity of the logged on user in both Power BI as well as in SQL DB/DWH etc.

Ramu Kodemala's profile image Profile Picture

vijay on 16 Aug 2020 03:53:11

RE: Security - Ability to maintain source security for reports published on BI Sites

RLS work in Power BI portal but does not work when user exports data to analyze in Excel.

Ramu Kodemala's profile image Profile Picture

Power BI User on 16 Aug 2020 03:53:08

RE: Security - Ability to maintain source security for reports published on BI Sites

Why was this not fully developed in advance of the deployment of "Analyze in Excel"? Seems like a gaping security hole has been created by allowing users access to source level data without a good method of restricting access for some but not all, especially if primary distribution means are via publication to group workspaces where RLS currently does not work.

Ramu Kodemala's profile image Profile Picture

Power BI User on 16 Aug 2020 03:52:55

RE: Security - Ability to maintain source security for reports published on BI Sites

I wanted to apply Current user filter to the Power BI report , Is it possible ?

Ramu Kodemala's profile image Profile Picture

Power BI User on 16 Aug 2020 03:52:51

RE: Security - Ability to maintain source security for reports published on BI Sites

Any update on this?

Ramu Kodemala's profile image Profile Picture

Kevin on 16 Aug 2020 03:52:50

RE: Security - Ability to maintain source security for reports published on BI Sites

Is this being considered? Hoping for an update as this is mission critical for us. Won't be pursuing Power BI without it.

Ramu Kodemala's profile image Profile Picture

Jarkko Suominen on 16 Aug 2020 03:52:47

RE: Security - Ability to maintain source security for reports published on BI Sites

This is definitely going the right direction. At least in the preview version we're able to add members to roles from our own organization. Will there be possibility to add members to roles also outside my own organization? That would be great addition to this!

Ramu Kodemala's profile image Profile Picture

ste Power BI User on 16 Aug 2020 03:52:45

RE: Security - Ability to maintain source security for reports published on BI Sites

Great work on RLS, but will we be able to dynamically filter data based on logged on user. i.e. set up a role with a large group of user in and then use a DAX statement using Username () or something like to filter data. Although username in PBI desktop returns AD account in Power BI service its a GUID string and most posts say not to use this. Noticed this suggestion that username () returns and effective name, which if done would solve the issue. https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/10312119-power-bi-service-return-effective-user-name-for-us . This way we can provide personal BI data to large groups of staff without having to create lots of individual roles.

Ramu Kodemala's profile image Profile Picture

Gautam on 16 Aug 2020 03:52:44

RE: Security - Ability to maintain source security for reports published on BI Sites

We are unable to sync Roles and Membership from Azure AD
We have 800+ site collections in our organization. Each site has one or more Site Managers. We intend to build a Site Manager Dashboard to help them monitor and manage site usage. The idea is to exploit the RLS feature so that each Site Manager is able to view the Dashboard data for his site only. The Site Managers can be constantly added or removed across sites. We tried using the new Roles Feature within PowerBI, so that each role maps to one site, and the Site Managers are added as members into those Roles. The challenge that we are facing is ensuring the Roles-Members mapping stays up-to-date in real-time (ideally). So, for instance when a person is provided Manager access on a site in Sharepoint, then he automatically gets membership into the corresponding Role in PowerBI. Is there some API exposed by PowerBI using which we could run a script when a new manager is added/removed for a site? Can anybody suggest a better solution? We are aware that Roles in PowerBI allow Active Directory Groups to be added, but defining AD Groups for each of our 800+ sites sounds like a maintenance nightmare. Is the PowerBI team considering any feature/API to help manage such a situation? We strongly believe that the scenario is NOT unique to us and will be faced by any big enterprise deploying PowerBI with Sharepoint.