This document contains a presentation on Power BI Embedded. It discusses how Power BI Embedded allows developers to integrate Power BI reports and dashboards into applications. It covers topics like authentication methods for Power BI Embedded, using the Power BI REST API, different embedding scenarios for organizational users and customers, and architecture considerations for embedding Power BI in software as a service applications. The presentation includes code demos of Power BI Embedded integration.
2. About me
Eugene Polonichko has over 7 years of experience
with SQL Server. He mainly focused on BI projects
(SSAS, SSIS, PowerBI, Cognos, Informatica
PowerCenter, Pentaho, Tableau). Eugene is a
passionate speaker and SQL community volunteer
presenting regularly at PASS SQL Saturday events
and local user groups around Ukraine and Europe.
Eugene is PASS Chapter Leader and he has a status
MVP Data Platform
https://www.linkedin.com/in/eugenepolonichko/
https://twitter.com/EvgenPolonichko
3. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Agenda
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
1. Getting started:
a. Ecosystem of Power BI
2. Power Bi Services ( configuration, publish)
a. Workspace
b. Publish PBI reports
c. Dashboards
f. Schedule
g. Subscribe
4. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Power BI
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
Power BI is a suite of business
analytics tools to analyze data and
share insights, with tools for business
users to gain access to their most
important metrics in a single location
across all devices and platforms
9. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Overview of Power BI Desktop
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
Power BI Desktop lets you build advanced
queries, models, and reports that visualize data.
With Power BI Desktop, you can build data
models, create reports, and share your work by
publishing to the Power BI service.
Power BI Desktop is a free download.
The common query tasks demonstrated here are
the following:
• Connect to data
• Shape and combine data
• Group rows
• Pivot columns
• Create custom columns
• Query formulas
11. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Power BI Embedded
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
Power BI Service integration is
facilitated via Power BI Embedded.
Power BI Embedded is an Azure
service that enables developers to
surface Power BI data experiences
within their applications.
12. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Embedded without coding
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
Publish to web is supported for the vast majority of data
sources and reports in the Power BI service, however, the
following are not currently supported or available with
Publish to web:
• Reports using row level security.
• Reports using any Live Connection data source,
including Analysis Services Tabular hosted on-premises
Analysis Service Multidimensional, Azure Analysis
Services, and Power BI Service.
• Reports shared to you directly or through an
organizational content pack.
• Reports in a group in which you are not an edit member.
• "R" Visuals are not currently supported in Publish to web
reports.
• Very simple
• Not need authentication
• Not need to code
14. Тема доклада
Тема доклада
Тема доклада
Typical SaaS application using Power BI embedded
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Applicationuser
Storage
15. Тема доклада
Тема доклада
Тема доклада
Application
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Use bi-directional API to increase engagement
Integrate analytics seamlessly into the app workflow
16. Тема доклада
Тема доклада
Тема доклада
Driven Tenacy model
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
When designing a multi-tenant SaaS application, you must
carefully choose the tenancy model that best fits the needs of
your SaaS application. This process is also valid for Power BI as
an embedded analytics part of your SaaS application. A
tenancy model determines how each tenant’s data is mapped
and managed within Power BI and the storage account. Your
tenancy model impacts application design and management.
Switching to a different model later may become costly
and disruptive.
• Defines separation level between customers (tenants)
• Impacts scalability, automation processes and cost
17. Тема доклада
Тема доклада
Тема доклада
Application UI Permission Logic/ Scenarios
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Embedding for your organization allows you to
extend the Power BI service. To do this,
implement the Embed for your organization
solution.
Embedding for your customers allows you to embed
dashboards and reports to users who don't have a
Power BI account. To do this, implement the Embed
for your customers solution.
18. Тема доклада
Тема доклада
Тема доклада
Application UI Permission Logic
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Embed for Power BI users
• End-users must be AAD & Power BI users
• User management is done in Power BI
• Only the consumption is through external applications
Embed for non-Power BI users
• End-users do not have to be Power BI users
• Authentication is done with a or ‘Service
Principal’
19. Тема доклада
Тема доклада
Тема доклада
Application UI Permission Logic
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Application authenticates users
The token your app issues determines:
20. Тема доклада
Тема доклада
Тема доклада
Authentication power bi embedded
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
Power BI
Application
user
Application
authentication
Application
Front End
(browser)
1
Application
Back End
AAD (service
principal/Master
User)
2 Login and receive
AAD token
3 Calls generate Token API as
the service principal/master
user
4
Gives token
to the user’s browser
5
Gives token
To Power BI
• Access to Power BI
is through an
service/user
account
• Application is
responsible for a
authenticating the
user
• Application
authorizes access
to Power BI using
token (Generate
Token Api)
21. Тема доклада
Тема доклада
Тема доклада
.NET LEVEL UP
Power BI Rest Api
.NET CONFERENCE #1 IN UKRAINE KYIV 2019
There are two main scenarios when embedding Power BI
content. Embedding for users in your organization (who
have licenses for Power BI) and embedding for your users
and customers without requiring them to have Power BI
licenses. The Power BI REST API allows for both scenarios.
22. Тема доклада
Тема доклада
Тема доклада
Start to build application with Power BI
.NET LEVEL UP .NET CONFERENCE #1 IN UKRAINE KYIV 2019
• Analyst
Power BI Desktop
Create
• Developer or Devops
Setup embedded solution
Provision
• Developer
Rest & JS API
Embed and
build
• Users
Your SaaS
application
Deploy