Först måste du veta att det finns två lägen för att bädda in Power BI - user owns data
och app owns data
. Med det första läget, när användaren bäddar in, kommer användaren att autentisera sig med sitt eget Power BI Pro-konto, det vill säga att var och en av dina användare behöver Power BI Pro-licens. Med det senare behöver du bara ett "huvudkonto", som kommer att användas för autentisering. Skillnaderna i implementeringen är inte enorma, så jag kommer att beskriva app owns data
.
Du måste göra följande:
-
Registrera en applikation - gå till dev.powerbi.com/apps och registrera en inbyggd applikation. Välj vilka behörigheter du vill ge det (om du är osäker, för dina första tester helt enkelt ge dem alla). Kopiera guiden - det här är app-ID, a.k.a. klient-ID.
-
Nästa steg är att autentisera från din applikation och få en åtkomsttoken. Använd Azure Active Directory Authentication Library ( ADAL) för det - ring några av
acquireToken
metoder förAuthenticationContext
klass. -
Använd denna åtkomsttoken för att anropa Power BI REST API och hämta
embedUrl
av elementet du vill bädda in, t.ex. rapport . -
Använd Power BI JavaScript-klient att faktiskt bädda in detta element. Du måste initiera en inbäddade konfigurationsklass och skicka information om elementtyp (rapport, instrumentpanel, ruta), var den kan hittas (embedUrl), autentisering (åtkomsttoken), några andra konfigurationsalternativ (visa eller dölj filterruta, navigering, etc.), filter som ska tillämpas och så vidare. Om du kommer att använda åtkomsttokenen ovan, ställ in
tokenType
varaAAD
. Denna token har många privilegier, så av säkerhetsskäl kanske du vill användaEmbed
token istället. Använd i det här fallet åtkomsttoken för att anropa REST API igen (t.ex. Rapporter GenerateTokenInGroup ). -
Ring
powerbi.embed
JavaScript-klientens metod skicka den inbäddade konfigurationen för att visualisera detta Power BI-element i din app.
Här är några resurser som du bör läsa:
- Självstudie:Bädda in kraft BI-innehåll till en applikation för dina kunder
- Självstudie:Bädda in Power BI-innehåll i en applikation för din organisation
- Grundläggande om inbäddning
- Power BI Embedded Playground
- Exempel på PowerBI-utvecklare