Dela via


Användningsscenarier för Power BI: Bädda in för dina kunder

Kommentar

Den här artikeln är en del av planeringsserien för Power BI-implementering. Den här serien fokuserar främst på Power BI-upplevelsen i Microsoft Fabric. En introduktion till serien finns i Implementeringsplanering för Power BI.

Det här användningsscenariot fokuserar på hur en utvecklare programmatiskt kan bädda in Power BI-innehåll i ett anpassat program för dina kunder. (Utvecklaren ansvarar inte nödvändigtvis för att skapa Power BI-innehållet.) Scenariot Bädda in för dina kunder gäller när programpubliken består av användare som inte har behörighet eller lämpliga licenser för att få åtkomst till Power BI-innehåll i din organisation. Det anpassade programmet kräver en inbäddningsidentitet som har behörighet och en lämplig licens för att få åtkomst till Power BI-innehåll. Det anpassade programmet kan vara ett program med flera klientorganisationer.

Kommentar

I det här scenariot är Power BI paaS (platform-as-a-service). Inbäddningsscenariot kallas ibland app äger data.

Scenariodiagram

Följande diagram visar en översikt på hög nivå över de vanligaste användaråtgärderna och Power BI-komponenterna som stöder inbäddning för dina kunder.

Diagrammet visar inbäddning för dina kunder, vilket handlar om att integrera innehåll i externa program. Objekt i diagrammet beskrivs i följande tabell.

Dricks

Vi rekommenderar att du laddar ned scenariodiagrammet om du vill bädda in det i presentationen, dokumentationen eller blogginlägget eller skriva ut det som en väggaffisch. Eftersom det är en SVG-bild (Scalable Vector Graphics) kan du skala upp eller ned den utan någon kvalitetsförlust.

Diagrammet ovan visar följande användaråtgärder, verktyg och funktioner:

Artikel Beskrivning
Objekt 1. Power BI-innehållsskapare utvecklar en BI-lösning med hjälp av Power BI Desktop.
Objekt 2. När det är klart publicerar innehållsskapare Power BI Desktop-filen (.pbix) eller Power BI-projektfilen (.pbip) till Power BI-tjänst.
Objekt 3. Vissa datakällor kan kräva en lokal datagateway eller VNet-gateway för datauppdatering, som de som finns i ett privat organisationsnätverk.
Objekt 4. En Power BI-arbetsyta innehåller Power BI-objekt som är redo för inbäddning. En inbäddningsidentitet, antingen ett huvudkonto för tjänsten eller huvudanvändarkontot, måste tillhöra antingen arbetsytans administratörs- eller medlemsroll. I en lösning för flera innehavare uppnås separationen av klientorganisationer genom att skapa en arbetsyta för varje klientorganisation. Det här designmönstret kallas för arbetsyteavgränsning.
Objekt 5. Det anpassade programmet uppmanar appanvändaren att autentisera med någon autentiseringsmetod (inte nödvändigtvis Microsoft Entra-ID – tidigare känt som Azure Active Directory).
Objekt 6. När autentiseringen lyckas använder det anpassade programmet inbäddningsidentiteten för att hämta och cachelagra en Microsoft Entra-åtkomsttoken.
Objekt 7. Det anpassade programmet använder Microsoft Entra-åtkomsttoken för att göra Power BI REST API-anrop för inbäddningsidentitetens räkning. Mer specifikt använder programmet åtkomsttoken för att hämta metadata om arbetsyteobjekt. Metadata innehåller egenskaper som krävs för att bädda in innehåll i det anpassade programmet. Den använder också åtkomsttoken för att generera och cachelagrar inbäddningstoken, som representerar fakta om Power BI-innehåll och hur programmet kan komma åt det.
Objekt 8. Det anpassade programmet bäddar in ett specifikt Power BI-objekt i ett iframe HTML-element. Programmet kan stödja skapande och redigering av Power BI-rapporter, förutsatt att inbäddningsidentiteten har behörighet att göra det.
Objekt 9. Power BI-administratörer övervakar och övervakar aktivitet i Power BI-tjänst.

Huvudpunkter

Följande är några viktiga punkter att betona om programmatiskt bädda in Power BI-innehåll i ett anpassat program för dina kunder.

Användningsfall

Ofta görs inbäddning för dina kunder av oberoende programvaruleverantörer (ISV:er). ISV:er känner igen ett behov av att bädda in analys i sina appar. Det gör det möjligt för användare att ha direkt åtkomst till insikter i kontexten, vilket hjälper dem att fatta beslut baserat på fakta i stället för åsikter. I stället för att utveckla visualiseringar är det vanligtvis snabbare och billigare att bädda in Power BI-innehåll.

ISV:er kan utveckla ett program för flera klientorganisationer, där var och en av deras kunder är en klientorganisation. Ett program för flera klientorganisationer som bäddar in Power BI-analys använder scenariot Bädda in för dina kunder eftersom programanvändare inkluderar externa användare. Fleraktiveringsprogram beskrivs mer detaljerat senare i den här artikeln.

Inbäddningsbart innehåll

När du bäddar in för dina kunder kan du bädda in följande Power BI-innehållstyper:

  • Power BI rapporter
  • Specifika visuella Power BI-rapportobjekt
  • Sidnumrerade rapporter
  • Q&A-upplevelse
  • Instrumentpaneler
  • Specifika paneler på instrumentpanelen

Det finns ingen begränsning för var innehållet finns, förutom att innehållet inte kan finnas på en personlig arbetsyta. Det viktiga är att inbäddningsidentiteten har behörighet att visa (eller skapa eller redigera) innehållet.

Autentisering

Autentiseringsflödet är icke-interaktiv autentisering med Microsoft Entra-ID (kallas även tyst autentisering). Icke-interaktiv autentisering innebär att appanvändaren inte behöver ha ett Power BI-konto, och inte ens när de gör det används det. Så en dedikerad Microsoft Entra-identitet, känd som inbäddningsidentiteten, autentiserar med Microsoft Entra-ID. En inbäddningsidentitet kan vara tjänstens huvudnamn eller ett huvudanvändarkonto (beskrivs senare).

Autentiseringsflödet försöker hämta en Microsoft Entra-token på ett sätt som gör att autentiseringstjänsten inte kan be användaren om ytterligare information. När appanvändaren autentiserar med appen (appen kan använda valfri autentiseringsmetod) använder appen inbäddningsidentiteten för att hämta en Microsoft Entra-token med hjälp av ett icke-interaktivt autentiseringsflöde.

När appen har hämtat en Microsoft Entra-token cachelagrar den och använder den sedan för att generera en inbäddningstoken. En inbäddningstoken representerar fakta om Power BI-innehåll och hur du kommer åt dem. Appen använder inbäddningstoken för att bädda in innehåll i ett iframe HTML-element.

Tjänstens huvudnamn

En app kan använda tjänstens huvudnamn för att hämta en Microsoft Entra-token. Microsoft Entra-tjänstens huvudnamn är en säkerhetsidentitet som används av appar. Den definierar åtkomstprincipen och behörigheterna för appen i Microsoft Entra-klientorganisationen, vilket aktiverar kärnfunktioner som autentisering av appen under inloggningen och auktorisering under resursåtkomst. Ett huvudnamn för tjänsten kan autentisera med hjälp av en apphemlighet eller ett certifikat. Ett huvudnamn för tjänsten kan bara använda Power BI REST-API:er när inställningen Tillåt tjänstens huvudnamn att använda Power BI-API s-klient är aktiverad och tjänstens huvudnamn tillhör en tillåten grupp.

Dricks

Vi rekommenderar att du använder tjänstens huvudnamn för produktionsappar. Det ger högsta säkerhet och därför är det den metod som rekommenderas av Microsoft Entra ID. Dessutom har den stöd för bättre automatisering och skalning och det finns mindre hanteringskostnader. Det kräver dock Power BI-administratörsbehörighet för att konfigurera och hantera.

Huvudanvändarkonto

En app kan använda ett huvudanvändarkonto för att hämta en AD-token. Ett huvudanvändarkonto är en vanlig Microsoft Entra-användare. I Power BI måste kontot tillhöra arbetsytans administratörs- eller medlemsroll för att bädda in arbetsyteinnehåll. Den måste också ha en PPU-licens (Power BI Pro) eller Power BI Premium per användare.

Kommentar

Det går inte att använda ett huvudanvändarkonto för att bädda in sidnumrerade rapporter.

Mer information om inbäddning av identiteter finns i Konfigurera behörigheter för att bädda in Power BI-innehåll.

Licensiering

När du bäddar in Power BI-innehåll för dina kunder måste du se till att innehållet finns på en arbetsyta som har något av följande licenslägen:

Viktigt!

Ibland refererar den här artikeln till Power BI Premium eller dess kapacitetsprenumerationer (P SKU:er). Tänk på att Microsoft för närvarande konsoliderar köpalternativ och drar tillbaka Power BI Premium per kapacitets-SKU:er. Nya och befintliga kunder bör överväga att köpa kapacitetsprenumerationer för Infrastrukturresurser (F SKU:er) i stället.

Mer information finns i Viktig uppdatering som kommer till Power BI Premium-licensiering och Vanliga frågor och svar om Power BI Premium.

Varje licenslägesalternativ kräver inköp av en fakturerbar produkt som är en kapacitetsbaserad licens. Med en kapacitetsbaserad licens kan du skapa reserverade kapaciteter.

Kapaciteter representerar de beräkningsresurser som krävs för att bearbeta arbetsbelastningar, till exempel rapportrendering och datauppdatering. Reserverade kapaciteter är isolerade från andra kunders arbetsbelastningar, så de erbjuder skalning som kan ge pålitlig och konsekvent prestanda.

Kommentar

Det går inte att använda scenariot Bädda in för dina kunder i produktionsmiljöer med licenser för infrastrukturresurser (kostnadsfritt), Power BI Pro eller Power BI PPU.

Mer information om produkter och licensiering finns i Välj lämplig Power BI Embedded-analysprodukt.

Power BI-klient-API:er

Med Power BI-klient-API:erna kan en utvecklare uppnå en nära integrering mellan det anpassade programmet och Power BI-innehållet. De utvecklar programmet genom att skriva anpassad logik med JavaScript eller TypeScript som körs i webbläsaren.

Programmet kan konfigurera och automatisera åtgärder, och det kan svara på användarinitierade åtgärder. Dessutom kan du integrera Power BI-funktioner, inklusive navigering, filter och utsnitt, menyåtgärder, layout och bokmärken.

Dricks

Power BI Embedded Analytics Playground är en webbplats som hjälper dig att lära dig, utforska och experimentera med Power BI Embedded-analys. Den innehåller en sandbox-miljö för utvecklare för praktiska upplevelser som använder klient-API:erna med Power BI-exempelinnehåll eller ditt eget innehåll. Kodfragment och presentationer är också tillgängliga för dig att utforska.

Mer information finns i Vad är den inbäddade analyslekplatsen för Power BI?

Framtvinga databehörigheter

När appanvändare endast ska ha åtkomst till att visa en delmängd data måste du utveckla en lösning som begränsar åtkomsten till Power BI-semantikmodelldata (tidigare kallade datamängder). Orsaken kan vara att vissa användare inte har behörighet att visa specifika data, till exempel försäljningsresultat för andra försäljningsregioner. Att uppfylla det här kravet innebär ofta att konfigurera säkerhet på radnivå (RLS), vilket innebär att definiera roller och regler som filtrerar modelldata.

När du använder scenariot För dina kunder måste appen ange den effektiva identiteten för inbäddningstoken för att begränsa åtkomsten till data. Den här effektiva identiteten avgör hur Power BI ansluter till modellen och hur den framtvingar RLS-roller. Hur du konfigurerar den effektiva identiteten beror på typen av Power BI-semantisk modell.

Mer information om RLS-roller för inbäddat innehåll finns i Framtvinga databehörigheter för Power BI Embedded-analys.

Program för flera klientorganisationer

Flera organisationer kan använda en app för flera klientorganisationer, där varje organisation är en klientorganisation. En app för flera innehavare som bäddar in Power BI-analys kan använda scenariot Bädda in för dina kunder eftersom appanvändare inkluderar externa användare. När du utformar en app för flera innehavare kan du välja mellan två olika innehavarmodeller.

Den rekommenderade metoden är att använda arbetsyteavgränsningsmodellen. Du kan uppnå den här metoden genom att skapa en Power BI-arbetsyta för varje klientorganisation. Varje arbetsyta innehåller Power BI-artefakter som är specifika för den klientorganisationen och de semantiska modellerna ansluter till en separat databas för varje klientorganisation.

Dricks

Mer information om arbetsyteavgränsningsmodellen finns i Automatisera arbetsyteavgränsning. Mer information om skalbara appar för flera innehavare finns i Tjänstens huvudnamnsprofiler för appar med flera klientorganisationer i Power BI Embedded.

Alternativt är databasmodellen för flera kunder tillgänglig. När du använder den här modellen uppnår din lösning separation med en enda arbetsyta som innehåller en uppsättning Power BI-objekt som delas mellan alla klienter. RLS-roller, som definieras i semantiska modeller, hjälper till att filtrera data säkrare för att säkerställa att organisationer endast visar sina egna data.

Inbäddning utan kod

Att utveckla en programmatisk lösning kräver skicklighet, tid och ansträngning. Tänk på att det finns en inbäddningsteknik som kallas inbäddning utan kod som icke-utvecklare kan använda för att bädda in Power BI-rapporter eller instrumentpaneler i Power Pages.

Gateway-konfiguration

Normalt krävs en datagateway vid åtkomst till datakällor som finns i det privata organisationsnätverket eller ett virtuellt nätverk. De två syftena med en gateway är att uppdatera importerade data eller visa en rapport som frågar en live-anslutning eller directquery-semantisk modell.

Kommentar

En centraliserad datagateway i standardläge rekommenderas starkt för gatewayer i personligt läge. I standardläge stöder datagatewayen live-anslutning och DirectQuery-åtgärder (utöver schemalagda datauppdateringsåtgärder).

Systemtillsyn

Aktivitetsloggen registrerar användaraktiviteter som inträffar i Power BI-tjänst. Power BI-administratörer kan använda aktivitetsloggdata som samlas in för att utföra granskning för att hjälpa dem att förstå användningsmönster och implementering.

Om du vill veta mer om Power BI Embedded-analys kan du gå igenom utbildningsvägen Bädda in Power BI-analys .

Du kan också gå igenom Kursen Power BI-utvecklare i en dag. Den innehåller ett självstudiepaket som vägleder dig genom processen att utveckla en ASP.NET Core MVC-app.

Andra användbara scenarier som hjälper dig med beslut om Power BI-implementering finns i artikeln Om Power BI-användningsscenarier .