Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
crixo
Frequent Visitor

How to retrieve authenticated user for power BI connector to Exchange Online

I'm using this connector to retrieve  Outlook Calendar data described here
https://learn.microsoft.com/en-us/power-query/connectors/microsoft-exchange-online

In desktop app everything works well and also after publishing the report online using my account/the same i configurared within the pbix.

I didn't find a way to retrieve the authenticated user and/or have the AAD process starting for different users while they are browsing the report online.

1 ACCEPTED SOLUTION
Shivu-2000
Resolver III
Resolver III

Hi @crixo,

Unfortunately, directly retrieving the authenticated user within the Power BI connector for Exchange Online (published to the Power BI service) isn't possible. This is due to security limitations to prevent unauthorized access to potentially sensitive data.

Here are some of the authentication differences between Power BI Desktop and the Power BI service:

Power BI Desktop:

  • Users authenticate with their credentials within the desktop application.
  • The connector leverages those credentials to access data.

Power BI Service:

  • Reports are published and shared with users.
  • Users accessing the report inherit the data access permissions granted to the report itself.
  • The report itself doesn't have the capability to retrieve or utilize the individual user's credentials.

You can go for alternate solutions as:

  1. Row-Level Security (RLS)

  2. Security Groups

  3. Embed Reports (Pro License Required)

 

 

 

If you find this insightful, please provide a Kudo and accept this as a solution.

View solution in original post

5 REPLIES 5
Shivu-2000
Resolver III
Resolver III

Hi @crixo,
Here is some detailed explanation about Embed Reports method:

Embedding Power BI reports (requires a Pro license) involves integrating them into a secure web application or portal. This allows users within the application to view the report data without directly accessing the Power BI service. Here's a breakdown of the process:

1. Prerequisites:

  • Power BI Pro License: You'll need a Power BI Pro license to enable embedding functionalities.
  • Developed Web Application: You'll need a developed web application or portal where you intend to embed the report. This application can be built using various web development frameworks and languages.

2. Publishing the Report for Embedding:

  • Open the Power BI Desktop report you want to embed.
  • Go to File > Publish > Publish to web (preview).
  • In the Publish to web pane, choose the workspace where your report resides and select the report you want to embed.
  • Under Embed settings, choose the Embed for your organization or Embed for your customers option depending on your audience.
  • Configure additional settings like access level, toolbar visibility, and refresh behavior as needed.
  • Click Publish.

3. Integrating the Report into Your Application:

  • Power BI will generate an embed code snippet containing the URL, access token, and other configuration details.
  • In your web application code, implement the embed code using the Power BI JavaScript API. This API provides functions for embedding reports, handling user interactions, and filtering data within the report.
  • You'll need to handle user authentication within your application if using "Embed for your organization" and want to enforce AAD authentication for viewers.

Resources:

 

 

If you find this insightful, please provide a Kudo and accept this as a solution.

SaiTejaTalasila
Solution Sage
Solution Sage

Hi @crixo ,

 

What ever you are expecting is not possible.But can use power query with parameter and you try similar thing in Excel.

 

https://exceloffthegrid.com/power-query-using-parameters/

 

 

OR You can try pulling all users calendar data using Microsoft graph & add a slicer to filter data based on users details.

https://learn.microsoft.com/en-us/graph/api/user-list-calendars?view=graph-rest-1.0&tabs=http

 

I hope the information shared by me will be helpful.

 

Thanks,

Sai Teja 

Hi @Sasa 
I'm using the Parameter as well within the power query/Transform Data/ Advanced Editor but it does not solve my need to have a given user accessing the report via web interface.
The Parameter simplified the user switching in the Power BI desktop app remaining in "Visual Mode" isntead of changing the user identifier into the Advanced Editor/Transfrom mode

Shivu-2000
Resolver III
Resolver III

Hi @crixo,

Unfortunately, directly retrieving the authenticated user within the Power BI connector for Exchange Online (published to the Power BI service) isn't possible. This is due to security limitations to prevent unauthorized access to potentially sensitive data.

Here are some of the authentication differences between Power BI Desktop and the Power BI service:

Power BI Desktop:

  • Users authenticate with their credentials within the desktop application.
  • The connector leverages those credentials to access data.

Power BI Service:

  • Reports are published and shared with users.
  • Users accessing the report inherit the data access permissions granted to the report itself.
  • The report itself doesn't have the capability to retrieve or utilize the individual user's credentials.

You can go for alternate solutions as:

  1. Row-Level Security (RLS)

  2. Security Groups

  3. Embed Reports (Pro License Required)

 

 

 

If you find this insightful, please provide a Kudo and accept this as a solution.

Thanks @Shivu-2000 
Could you please give more details/links w/ info about the 3 options you mentioned to solve my use case?

Helpful resources

Announcements
July 2024 Power BI Update

Power BI Monthly Update - July 2024

Check out the July 2024 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors