Embedding Power BI in your Web Application?

Slides:



Advertisements
Similar presentations
Power BI Sites and Mobile BI. What You Will Learn Sharing and Collaboration Introducing Power BI Exploring Power BI Features and Services Partner Opportunities.
Advertisements

Welcome! Power BI User Group (PUG)
1/27/2018 5:13 AM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Building ARM IaaS Application Environment
Power BI for the Enterprise
A lap around Azure Active Directory Business to Consumer (B2C)
Data Platform and Analytics Foundational Training
PowerApps & Flow Licensing Overview for Partners
4/24/ :07 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Power BI for the Enterprise
Presenter Date | Location
Make Power BI Your Own with the Power BI APIs
5/22/2018 1:39 AM BRK2156 Power BI Report Server: Self-service BI and enterprise reporting on-premises Christopher Finlan Senior Program Manager © Microsoft.
Embed Power BI in your Web application
Welcome! Power BI User Group (PUG)
What’s new with Power BI /guyinacube.
Let’s talk Power BI Premium /guyinacube Adam Saxton.
SaaS Application Deep Dive
Modern application lifecycle with DevOps
Developing Hybrid Apps on Microsoft Azure Stack
Make Power BI Your Own with the Power BI APIs
Data Platform and Analytics Foundational Training
SPC Developer 6/25/2018 © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
Manage mobile productivity with Enterprise Mobility + Security (EMS)
Secure Remote Access to on-premises Web Apps using Azure AD
Power BI Premium overview
Power BI Security Best Practices
SQL Server Data Tools for Visual Studio Part I: Core SQL Server Tools
Windows Azure Pack : Express Installation
Developing an app for SharePoint autohosted in Azure
Excel Services Deployment and Administration
Microsoft Azure Certified
Dev and Test Environments in the Cloud
Power Apps & Flow for Microsoft Dynamics SL
Azure AD Line Of Business Application Integration
11/14/ :30 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
Microsoft Project Licensing
Microsoft Services Provider License Agreement Program reference card
The Challenges of moving Document Creation to the Cloud
Office 365 Development July 2014.
Microsoft Build /24/2018 2:25 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Make Power BI Your Own with the Power BI APIs
Office 365 Development July 2014.
Agenda OAuth Concepts Programming OAuth.
Microsoft Build /2/2019 6:45 PM © 2016 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY,
Microsoft Virtual Academy
Getting Started with SP2013 Apps
Office 365 Development.
From Development to Production: Optimizing for Continuous Delivery
Building and running HPC apps in Windows Azure
Power BI Embedded Bringing Analytics to your App
Developing for Windows Azure
From Development to Production: Optimizing for Continuous Delivery
Common Data Service Data Integrator
What’s new in Visual Studio 2012
Windows Azure Hybrid Architectures and Patterns
07 | Introduction to Authentication
The complete developer's guide to the SkyDrive API
Day 2, Session 2 Connecting System Center to the Public Cloud
Office 365 Development July 2014.
Microsoft Virtual Academy
Microsoft Virtual Academy
Erik Porter Program Manager ASP.NET Microsoft Corporation
Microsoft Virtual Academy
What’s New for Developers in Office and SharePoint
Microsoft Virtual Academy
Implementing a Distributed Enterprise Architecture to Deliver BI
Microsoft Virtual Academy
Power BI Embedded for Fun and Profit
Presentation transcript:

Embedding Power BI in your Web Application? Pritesh Ostwal Embedding Power BI in your Web Application?

World of Data Journalism http://projects.fivethirtyeight.com/complete-history-of-the-nba/#cavaliers

Original Agenda of Session Embedding Power BI Report in your Web Application Public Power BI Reports Embedding Power BI Portal Dashboard Azure Embedded Power BI Service Web Forms Traditional .NET Java Script using .NET Core

Revised Agenda Talk about changes in Power BI Landscape Power BI Premium and Power BI Report Server Embedding Power BI Report Server – PBIX Report Web Forms Traditional .NET

Evolving Power BI Landscape What’s New

Power BI Premium: A Dedicated Instance of the Power BI Service Power BI Premium is an add-on for the Power BI service. Power BI Premium is basically your own private server running the Power BI architecture in Azure To understand why that’s important, it helps to understand the existing architecture for the Power BI. Currently, Power BI runs on clusters of machines that all of the Power BI customers use. Because of this, Power BI places restriction on how much capacity and resources that an individual can use so that no single user has a really negative experience. With Power BI Premium, all the capacity is yours. Because the capacity of Power BI Premium services belong to you, this allows many of the restrictions and limitations of the Power BI service to be lifted giving you greater control over how resources dedicated to your Power BI service are managed. Customer 1 Customer 2 Customers 1, 2, 3, … n Customer 3

The Capacity of Power BI Premium is ALL YOURS Dedicated Power BI resources for you No more per user licensing for content consumers Read access to a larger group of users Because Power BI Premium is basically your own private Power BI server, you have flexibility over how those resources are used. The resources are dedicated to your organization, so this allows you to deliver Power BI content to your organization without having to license every single, individual users. Also, since the resources are dedicated to your organization, this removes the requirement to license every single user that needs access to your Power BI content. This enabled read access to much larger groups of users than before. So with Power BI Premium, you can roll out Power BI content to as many users as the capacity you’ve purchased can handle.

Your Organization P P P P Power BI Premium Power BI developers Power BI consumers Power BI Data Sources Reports Dashboards P P P Premium Power BI developers Reports Dashboards Now lets talk about an example: Say you have a requirement to distribute Power BI reports and dashboards to your entire organization or at least to a large number of members of your organization. Prior to Power BI Premium, you would need to purchase a Power BI Pro license for the your development team that would be building the Power BI reports and dashboards, and you would also need to purchase Pro licenses for the consumers of the content. This could make life difficult if you have a large number of users wishing to access the Power BI content. Per user licensing for 30,000 users, for example, would very expensive and difficult to manage. With Power BI Premium, you now have the flexibility to deploy your Power BI content to your dedicated capacity. This would allow the members of your organization to access the Power BI content without needing a Pro license. Your developers would still be licensed for Power BI Pro, as they’re the users that are creating, sharing, and administrating Power BI in your organization, but the consumers of the content would no longer require a Pro license. Because your Power BI content is deployed to your dedicated capacity via Power BI Premium, this means we can also scale up when we need to by purchasing more capacity. Another example would be if you had users of a SharePointOnline site accessing an embedded Power BI report. The users log in to the SharePointOnline site, view the Power BI report, P

Power BI Apps (in preview) Package, deploy, manage, share reports & dashboards Group Workspaces Publish Apps to your organization Easily update and publish updates to your Apps Apps will be preferred method of distributing Premium content to Free users w/o per user licensing! :D REPEAT End users need Power BI Pro licenses to consume these apps. But if the app content resides in Power BI Premium capacity, end users can access the content without requiring a Power BI Pro license. App Workspaces Power BI Apps let you bundle up your Power BI content, data sets, reports, dashboards, and then share that content within your organization. Group workspaces will no longer be known as Group Workspaces. They’ll be known as App Workspaces. App Workspaces will be where we publish our Power BI content that we will then bundle up into a Power BI App. So the App Workspace becomes the container for all the content that will be in our App. So the Apps become a way for us to publish content to our entire organization. We can control the members of the group workspace to control who can edit the App, but with the Apps we can control which users can have access to the App. And just to clarify, Apps are not ONLY a Premium feature. App Workspaces are different than Group Workspaces: Creating app workspaces will not create corresponding entities in O365 like group workspaces do today. So you can create any number of app workspaces without worrying about different O365 groups being created behind the scenes. (You can still use an O365 group’s OneDrive for Business to store your files.) Also, today you can add only individuals to the members and admin lists. In the next iteration you will be able to add multiple AD security groups or modern groups to these lists for easier management. * Content Packs are being deprecated, so start using Apps!

Cost Calculator With Power BI Premium you can distribute all your BI apps to users throughout your organization without requiring per-user licensing. https://powerbi.microsoft.com/en-us/calculator/

Power BI Portal – Changes https://App.powerbi.com Power BI Portal Samples https://github.com/Microsoft/PowerBI-Csharp C:\powerbi\NC\PowerBI-Developer-Samples-master\PowerBI.com Integrate\integrate-dashboard-web-app

Power BI Portfolio Today Future Power BI Desktop Power BI Free* 10/25/2017 Power BI Portfolio Today Future Power BI Desktop Authoring and exploration Connect to 70+ sources Data prep and mashup Report creation and exploration No changes Power BI Free* Personal use Smaller capacity limits and data refresh rates Access only to select data sources Dashboard sharing limitations Performance equivalent to Pro Access to all data sources Single user - no dashboard sharing, distribution, or collaboration Power BI service Power BI Pro Self-service and collaboration Larger capacity and data refresh rates Access to all data sources Full dashboard sharing (P2P), report publishing and collaboration No changes Power BI Premium Capacity & performance Increased capacity limits, performance enhancements and enables distribution of content without requiring per user licensing On-premises report distribution *Starting June 1, 2017, existing active users of Power BI Free in the last 12 months dating back from May 2, 2017, will receive an extended Power BI Pro trial for 12 months © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Power BI Portfolio Power BI Desktop Power BI Free Power BI Pro Free report authoring and ad-hoc data exploration Power BI Free Quick, easy-to-use self-service analytics for personal use Power BI Pro Quick, easy-to-use self-service analytics for users requiring collaboration, dashboard sharing, ad hoc analysis, and report publishing Licensed by user Power BI Premium An add-on to Power BI Pro for projects requiring large scale data, demanding performance, and the ability to distribute content without requiring per user licensing. Includes PBI Embedded Licensed by capacity Licensed by user Licensed by user

Power BI Embedded Power BI Embedded is now part of Power BI Premium Power BI Embedded allows you to integrate custom applications with Power BI assets Predictable Pricing Scalable performance for your cloud app solutions Power BI Embedded is now included as part of Power BI Premium. If you are familiar with the Power BI Embedded service in Azure, it allowed a customer to deploy Power BI reports to the Power BI Embedded service and then integrate the Power BI reports with their custom apps without having to license the users accessing the apps. The pricing for Power BI embedded was based on the number of sessions, which made it difficult to predict costs. Well Power BI Embedded is now included with Power BI Premium, giving you much more predictable pricing and easily scalable performance for your cloud app solutions. The embedded functionality of Power BI Premium also expands the reach of your data by allowing you to deliver your Power BI reports and analytics to the users of your apps.

Power BI for Developers* </> Embed Power BI experiences directly into your public facing websites and blogs Extend Power BI and your reach with organizational content packs and custom visuals Integrate user-defined Power BI experiences into your app *This is for Power BI embedded. More customizations are available with full Power BI

Power BI Premium Embedded Analytics 10/25/2017 4:10 PM Power BI Premium Embedded Analytics What is Power BI embedded analytics? Power BI Premium converges Power BI Embedded with the Power BI service Unifies a platform for both SaaS and PaaS Delivers one API surface and a consistent set of capabilities. Licensing Sold based on capacity EM3 node for embedded deployment at a lower price per month Purchased via Office portal at GA KEY POINTS: Power BI Premium advances how Power BI reports are embedded in apps created by customers, partners and the broad developer community. As part of the new offering we are converging Power BI Embedded with the Power BI service. Our goal is to provide a unified platform for both SaaS and PaaS that delivers one API surface and a consistent set of capabilities. Moving forward we encourage those interested in delivering apps with embedded Power BI reports to start with Power BI Pro for development and testing, then harness Power BI Premium as the path to deployment – the offering’s capacity-based construct applies to embedded scenarios as well to help provide a predictable licensing model based on the app’s requirements. Power BI Embedded will continue to be available for existing apps. © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Power BI Embedded Transition 10/25/2017 4:10 PM Power BI Embedded Transition Metered on volume of sessions Sold based on capacity Today (Power BI Embedded) Future (Power BI Premium) EM3 node for embedded deployment at a lower price per month Billed based on session volume usage KEY POINTS: Power BI Embedded helps developers and customers bring data to life inside their own apps In the past, Power BI Embedded was metered on the volume of sessions and billed on consumption Power BI Premium advances how Power BI reports are embedded in apps created by customers, partners and the broad developer community. As part of the new offering we are converging Power BI Embedded with the Power BI service. Our goal is to provide a unified platform for both SaaS and PaaS that delivers one API surface and a consistent set of capabilities. Power BI Premium is sold based on virtual core capacity The EM node series supports embedded delivery only, at a lower entry price than the P node series Purchased in Azure Purchased via Office portal at GA © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Embed Power BI Report Server Report

Power BI Report Server - PBIX Reports Embed in App Embed using iFrame Demo C:\powerbi\NC\CoreAppPowerBI

Simple Command Report Path ?rs:Embed=true Implement Custom Authentication provider

Kerberos Constrainted validation on PowerBI Report Server https://theblobfarm.wordpress.com/2017/05/24/configuring-power-bi-report-server-preview-for-kerberos-constrained-delegation/ Thanks Kevin Feasal

Embed Power BI Portal Report

Get Application Client ID https://dev.powerbi.com/apps

Oauth 2.0 Authorization Flow Login Needed to Get Authorization Code

Future Authentication https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-migrate-from-powerbi-embedded/

Old - Embedded Story (Time permitting) https://pixabay.com/en/login-password-log-sign-on-turn-on-1203603/

Resources https://azure.microsoft.com/en-us/pricing/details/data-transfers/ https://azure.microsoft.com/en-us/documentation/articles/data-management-azure-sql-database-and-sql-server-iaas/ https://msdn.microsoft.com/en-us/library/mt652547.aspx?f=255&MSPPError=-2147217396 http://www.sqlsaturday.com/462/Speakers/Details.aspx?spid=1850 www.sqlchick.com http://www.sqlchick.com/entries/2015/9/4/direct-connect-options-in-power-bi-for-live-querying-of-a-data-source https://azure.microsoft.com/en-us/documentation/articles/data-management-azure-sql-database-and-sql-server-iaas/ https://msdn.microsoft.com/en-us/library/ms170438.aspx https://azure.microsoft.com/en-us/documentation/articles/sql-database-performance-guidance/ https://azure.microsoft.com/en-us/documentation/articles/power-bi-embedded-what-is-power-bi-embedded/ https://azure.microsoft.com/en-us/documentation/articles/power-bi-embedded-app-token-flow/ https://azure.microsoft.com/en-us/blog/transactional-replication-to-azure-sql-db/ https://azure.microsoft.com/en-us/documentation/articles/sql-database-cloud-migrate/ https://msdn.microsoft.com/en-us/library/mt589530.aspx https://github.com/mrsheepuk/ASPNETSelfCreatedTokenAuthExample/blob/master/src/TokenAuthExampleWebApplication/TokenAuthOptions.cs http://stackoverflow.com/questions/36694170/power-bi-embedded-from-php-obtain-an-azure-authentication-token-oauth

Thank You Contact: pritesho@gmail.com Twitter: PriteshOstwalGA https://pixabay.com/en/analytics-business-resources-wordle-1368293/

Embed Power BI Azure Service Report (Soon Deprecated)

Power BI Embedded Power BI Embedded is an Azure service that enables application developers to add interactive Power BI Reports into On-Prem and external applications. Organization can continue to follow their own user authentication for the application and embed Power BI seamlessly using Azure token based authentication and authorization. Service is provisioned through Azure ARM APIs.

Demo – Provisioning using Azure Resource Manager Cmdlets C:\powerbi\NC\power-bi-embedded-integrate-report-into-web-app-master

Azure Portal – Power BI Service https://portal.azure.com

Documentation https://docs.microsoft.com/en-us/azure/power-bi-embedded/ PowerShell – ARM Commandlets REST – Call to service .NET - SDK

App Tokens Power BI Embedded supports 3 flavors of app tokens each with separate requirements. Provision: Used to manage root of workspace collection Dev: Used to make scoped calls into a workspace within collection Embed: Read only access to report to embed All tokens are HMAC (Hash-based Message Authentication Code) signed JSON Web Tokens. The tokens are signed with the access key from your Azure Power BI Embedded workspace collection.

Access Key WARNING - Never expose your access keys client side in your application. If your access key is compromised a malicious user can take over control of your workspace collection. Access keys can be re-generated for your workspace collection within the Azure portal.

Token Asserts a Claim

Tokens – Sign with API Access Keys

User Requests to view a Report

Token is validated with an API access key

Power BI Embedded sends a report to user

Launch Demo on Power BI - JavaScript Azure: create a workspace collection and a dataset, note down access keys and workspace ID credentials. https://github.com/Azure-Samples/power-bi-embedded-integrate-report-into-web-app PowerBI Embedded C# CLI (mvc sample): Create a workspace within the workspace collection using noted credentials from azure and import a pbix file into the newly created workspace, this generates an import ID which is really your report ID. https://github.com/Microsoft/PowerBI-Cli PowerBI Master-CLI (because one CLI program just isnt enough): Install node and NPM and then install the powerBI-Master-CLI project from github using npm. Use the create-embed-token command along with the workspace collection credentials, you will need the report ID generated in the other cli program. This generates an access token for the report. https://github.com/Microsoft/PowerBI-JavaScript C:\powerbi\NC\PowerBI-JavaScript-master powerbi create-embed-token -c "TestWC" -k "ii0RHhC/jLm77o7EFRlpvy0MarBAO4r8nBONd2MO8bHkBTCGI3xFM5MqTFkmO5gXOXV3ZDxb2wNXwXbbhv6oiA==" -w "fb629877-453c-4db8-9dec-51a6ab76ac97" -r "93fce0da-1834-4d77-a0f5-ffd0e8a939ca" http://azure-samples.github.io/powerbi-angular-client/#/scenario1

Authenticating reports base64 encoded string of HMAC (the signature) with SHA256 algorithm { "typ":"JWT", "alg":"HS256" } { "wid":"{workspace id}", "rid":"{report id}", "wcn":"{workspace collection name}", "iss":"PowerBISDK", "ver":"0.2.0", "aud":"https://analysis.windows.net/powerbi/api", “type”: provision | dev | embed "nbf":{start time of token expiration}, "exp":{end time of token expiration} }

Angular – Quick Plnkr http://plnkr.co/edit/tQc1DF?p=info

Row Level Security