PowerBI Report to SharePoint 2013 Embedded Page - sharepoint-2013

We have a PowerBI report embedded to a SharePoint 2013 web page. PowerBI provides you with the embedded code of your report to use on any web page.
Problem:
PowerBI decided to include the option of sharing your dashboard/report with the whole world using the Facebook, Twitter, LinkedIn options. A simple single click your confidential report is on Twitter. To us this is a big security risk.
Findings:
I have used the F12 tools to hide the Social Media buttons and this works well while on F12 Tools. When I add this to the Script Editor in SharePoint page so it always applies, it doesn’t work. I thought a simple CSS would do the trick.
glyphicon-share-twitter
display:none
[F12 Tools]
After F12 Tools - Twitter hidden

It is still unsecure even without the share buttons.
If you want to securely embed Power BI content you should use Power BI embedded or use the Power BI API's to embed and use the Power BI authentication.
Kasper de Jonge (Admin, Microsoft Power BI)
https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/16498078-disable-share-buttons

Related

How can I publish Power BI Report to a website

I need to do reporting for my client and are looking into Power BI. What I need to do, is create the report and publish it to the client's website for the public. These reports are public knowledge, there is no security risk to distribute it.
The users should be able to see the report on the website and use some filtering options that comes with Power BI.
I have installed Power BI Desktop (free option) and created the report, but I can not 'Save as' to Web - there is no such option.
My questions are:
Do I need a licence to be able to publish to the web.
Once published to the web, will it be displayed on the website to the users with the functionality to filter and drill down even if they do not have Power BI license?
You have two options - Publish to web and to use the API to embed for your customers (a.k.a. app owns data).
In both cases you must publish the report to Power BI Service. You will need an account for that, but even the free one will work for Publish to web case. However, it is way more limited that the actual embedding using the API.
To register an account, you will need a "business e-mail address", i.e. GMail, Outlook, etc. will not work. This is required, because it will create a tenant for this domain, where the administrators in your organization can manage it.
For Publish to web the administrator must explicitly enable that option in the admin portal. Embedding using the API require programming skills, and normally you will need to buy a "dedicated capacity" (i.e. Power BI Embedded or Power BI Premium).

Can we create embed code without having power bi pro licencse?

I have created report in power bi but i am not able to share it client as i dont have power bi pro license, whenever i clicked on publish to web button it is showing 'Contact your admin to enable embed code creation' pop up message
Yes, you can create a share to web without having a Power BI Pro license, however it is turned off by default in the Power BI tenant settings.
This will need to be enabled by your O365 or Power BI Admin. Please note, this method of sharing is NOT secure, anyone with the url will be able to access or see the report. The URL it generates is publicly accessible. To securely share you will need Power BI Pro, and share via workspaces or apps

Power BI Embedded can I also Embed the web power bi designer

Customer can only see their data through this web application which is on azure ad domain.
If I embed Power BI to the web application is it possible to embed the power bi web designer as well?
Just trying to find a way to use embedded without giving the user direct access to the cubes and db from their Power BI desktop.
You can embed the report in View or in Edit modes. Probably the later one is what you are looking for. See Embed Configuration Details for more details.
var embedConfig = {
...
permissions: models.Permissions.All
viewMode: models.ViewMode.Edit
You can also switch from view to edit mode and vise versa with following code:
report.switchMode("edit");
report.switchMode("view");

How to share Power BI reports to clients via app.powerbi? Also what is the difference between report and dashboard in power bi app?

I'm a newbie in Power BI..
I need to develop a tabular report (no visualizations) in Power BI and publish it to powerbi app so that client can see live reports.
For that what are the settings we have to do in app.powerbi or powerbi cloud?
When I published a report in my pbi cloud, in the report section, there is an option to publish /embed code. But it says the content will be available to public. So how can we restrict access? Do the client need to have pbi account to share the reports? Please let me know what type of PBI account we have to purchase to meet this requirement.
Also is it mandatory to create dashboard in order to share it to the client? Because report option serves the purpose? Is there any advantages in creating dashboard over reports?
Or do you feel any other suggestions rather than Power BI?
Data format: txt, tab delimited
Type of data: Medical records
Any help on this is greatly appreciated.
Power BI world has different things:
Power BI Desktop (PBID)- this is fat desktop client to create reports. You can use it for free.
Power BI Services (PBIS)- this is SaaS application that allows you create reports and share it. When you open powerbi.com you work with this app. All you reports located in logical containers - workspaces. This container like folder, nothing more. You can publish report from Desktop here into specific workspace. You can embed report from there, but without authentication, thus everyone can see it.
Power BI Embedded (PBIE)- this is PaaS solution to embedded reports into you app. Reports anyway should be stored into some workspace at PBIS. But you app can implement auth and show only specific reports to particular users. All users in you app can see different content and reports, based on your app logic, because you manage access to report via PBIE SDK. Take a look at playground.
So when your users work with PBIS they work with Microsoft Web App, if you want embedded same reports into you app, use PBIE with provided SDKs.
As for licenses. In fact there is only one license type: PRO.
If your users want publish and share reports using PBIS they ALL must have PRO licenses. That the point. You can use all products free unless you want share you reports and analysis. If you need to share you have to pay.
Different thing for PBIE. You implement your app as you wish, you manage you users. They should not have PRO licenses. In fact, you need one license to store you reports. I call this like service account. This is regular PBIS user with PRO license. You use it only for publishing reports and storing it at PBIS and you app use it to load and embedded reports. If you have 1000 users, you can buy 1 license and use it to publish you work and all users will be authenticated in you app, authorization also will be done in your app.
Another thing, that once you go in prod you need to buy capacity - Power BI Embedded Services at Azure. The cost depends on renders. Read more docs on this.

Power BI embedded - Publishing to Azure Workspace - Issue

As said in many reference link, in case of embedding the power bi to a application where we are going to build a secure website, we need to embed the Power BI report by publishing the power bi report to Azure Workspace right.
In that case , for registering the power bi report in Azure AD we followed the steps specified in the below link
https://azure.microsoft.com/en-in/documentation/articles/power-bi-embedded-iframe/
While trying to import the .pbix file using REST API by using the POST request to api.powerbi.com, we were receiving 403 error. Hence we were not able to proceed further with the registeration/upload of PBIX file using Import API.
Also, for standalone or anonymous public embedding website we can go with Power BI Publish to Web option, using this we can get the embed code for the power bi report, which can be embedded into the web page. In case of standalone reports we can use this option to embed the power bi report on to our application, but since in our requirement we need to filter the data based on the user selection on the custom web page, we have to go with option 1 i.e. with publishing the report to AAD (Azure AD). Since we are facing authentication issue, we are unable to proceed with the process further.
Once the report is being publish we havethought of using either Power BI JavaScript or Angular JS API to pass the filter data from custom filter pane to the power BI as shown in the demo site.