Power BI-Nutzungsszenarios: Einbetten für Ihre Kunden

Hinweis

Dieser Artikel ist Teil der Artikelreihe zur Power BI-Implementierungsplanung. Diese Reihe konzentriert sich hauptsächlich auf den Power BI-Workload innerhalb von Microsoft Fabric. Eine Einführung in die Artikelreihe finden Sie unter Power BI-Implementierungsplanung.

In diesem Nutzungsszenario erfahren Sie, wie Entwickler*innen Power BI-Inhalte programmgesteuert in eine benutzerdefinierte Anwendung für Ihre Kunden einbetten können. (Der Entwickler ist nicht unbedingt für das Erstellen der Power BI-Inhalte verantwortlich.) Das Szenario Einbetten für Ihre Kunden gilt, wenn die Anwendungsgruppe Benutzer umfasst, die nicht über die Berechtigung oder die entsprechenden Lizenzen für den Zugriff auf Power BI-Inhalte in Ihrer Organisation verfügen. Die kundenspezifische Anwendung erfordert eine Einbettungsidentität, die über die Berechtigung und eine entsprechende Lizenz für den Zugriff auf Power BI-Inhalte verfügt. Die benutzerdefinierte Anwendung kann eine Mehrinstanzenfähige Anwendung sein.

Hinweis

In diesem Szenario handelt es sich bei Power BI um Plattform-as-a-Service (PaaS). Das Szenario zum Einbetten wird manchmal auch als App besitzt Daten bezeichnet.

Szenariodiagramm

In der folgenden Abbildung sehen Sie eine allgemeine Übersicht der häufigsten Benutzeraktionen und Power BI-Komponenten, die das Einbetten für Ihre Kunden unterstützen.

Das Diagramm zeigt die Einbettung für Ihre Kunden, wobei es um die Integration von Inhalten in externe Anwendungen geht. Die Elemente im Diagramm werden in der folgenden Tabelle beschrieben.

Tipp

Wir empfehlen Ihnen, das Szenariodiagramm herunterzuladen, wenn Sie es in Ihre Präsentation, Dokumentation oder Ihren Blogbeitrag einbinden oder als Wandposter ausdrucken möchten. Da es sich um ein SVG-Bild (Scalable Vector Graphics) handeln kann, können Sie es ohne Qualitätsverlust nach oben oder unten skalieren.

Die Abbildung oben stellt die folgenden Benutzeraktionen, Tools und Features dar:

Element Beschreibung
Element 1 Power BI-Inhaltsersteller*innen entwickeln mithilfe von Power BI Desktop eine BI-Lösung.
Element 2 Wenn er bereit ist, veröffentlicht der Inhaltsersteller die Power BI Desktop-Datei (PBIX) oder power BI-Projektdatei (PBIP) im Power BI-Dienst.
Element 3 Für einige Datenquellen ist möglicherweise ein lokales Datengateway oder ein VNet-Gateway für die Datenaktualisierung erforderlich, z. B. solche, die sich in einem privaten Organisationsnetzwerk befinden.
Element 4 Ein Power BI-Arbeitsbereich enthält zum Einbetten bereite Power BI-Elemente. Eine einbettende Identität, d. h. entweder ein Dienstprinzipal oder ein Hauptbenutzerkonto, muss entweder zur Rolle Admin oder Member des Arbeitsbereichs gehören. Bei einer mehrinstanzenfähigen Lösung werden die Mandanten durch Erstellen eines eigenen Arbeitsbereich für jeden Mandanten getrennt. Dieses Entwurfsmuster wird als Arbeitsbereichstrennung bezeichnet.
Element 5 Die benutzerdefinierte Anwendung fordert den App-Benutzer auf, sich mithilfe einer Authentifizierungsmethode zu authentifizieren (nicht unbedingt Microsoft Entra-ID –zuvor als Azure Active Directory bekannt).
Element 6 Nach erfolgreicher Authentifizierung ruft die benutzerdefinierte Anwendung mit der einbettenden Identität ein Microsoft Entra-Zugriffstoken ab und speichert es zwischen.
Element 7 Mit dem Microsoft Entra-Zugriffstoken führt die benutzerdefinierte Anwendung für die einbettende Identität Aufrufe der Power BI-REST-API durch. Insbesondere verwendet die Anwendung das Zugriffstoken, um Metadaten zu Arbeitsbereichselementen abzurufen. Zu den Metadaten gehören Eigenschaften, die zum Einbetten von Inhalten in die benutzerdefinierte Anwendung erforderlich sind. Außerdem wird das Zugriffstoken verwendet, um Einbettungstoken zu generieren und zwischenzuspeichern. Diese Token repräsentieren Fakten zu Power BI-Inhalten und stellen dar, wie die Anwendung darauf zugreifen kann.
Element 8 Die benutzerdefinierte Anwendung bettet ein bestimmtes Power BI-Element in ein iframe-HTML-Element ein. Mit der Anwendung kann das Erstellen und Bearbeiten von Power BI-Berichten unterstützt werden, sofern die einbettende Identität über die Berechtigung dazu verfügt.
Element 9 Power BI-Administratoren beaufsichtigen und überwachen Aktivitäten im Power BI-Dienst.

Wesentliche Punkte

Im Folgenden finden Sie einige wichtige Punkte zum programmgesteuerten Einbetten von Power BI-Inhalten in eine benutzerdefinierte Anwendung für Ihre Kunden.

Anwendungsfall

Das Einbetten für Ihre Kunden erfolgt häufig durch unabhängige Softwareanbieter (Independent Software Vendors, ISVs). ISVs kennen die Notwendigkeit, Analysen in Apps einzubetten. Auf diese Weise haben Benutzer*innen direkten Zugriff auf kontextbezogene Informationen, sodass sie Entscheidungen auf der Grundlage von Fakten statt Meinungen treffen können. Für gewöhnlich ist das Einbetten von Power BI-Inhalten Anstatt schneller und kostengünstiger, als Visualisierungen zu entwickeln.

ISVs können eine mehrinstanzenfähige Anwendung entwickeln, bei der es sich bei jedem Kunden um einen Mandanten handelt. Eine mehrinstanzenfähige Anwendung verwendet zum Einbetten von Power BI-Analysen das Szenario Einbetten für Ihre Kunden, da auch externe Benutzer*innen die Anwendung nutzen. Mehrinstanzenfähige Anwendungen weiter unten in diesem Artikel ausführlicher beschrieben.

Einbettbare Inhalte

Beim Einbetten für Ihre Kunden können Sie die folgenden Power BI-Inhaltstypen verwenden:

  • Power BI-Berichte
  • Bestimmte Power BI-Berichtsvisuals
  • Paginierte Berichte
  • Q&A-Oberfläche
  • Dashboards
  • Spezielle Dashboardkacheln

Es gibt keine Einschränkung, wo sich der Inhalt befindet. Er darf sich nur nicht in einem persönlichen Arbeitsbereich befinden. Wichtig ist, dass die einbettende Identität über die Berechtigung zum Anzeigen, Erstellen oder Bearbeiten des Inhalts verfügt.

Authentifizierung

Beim Authentifizierungsflow handelt es sich um die nicht interaktive Authentifizierung mit Microsoft Entra ID (auch als automatische Authentifizierung bekannt). Bei der nicht interaktive Authentifizierung müssen App-Benutzer*innen nicht über ein Power BI-Konto verfügen und es auch nicht verwenden, wenn sie eines besitzen. Eine dedizierte Microsoft Entra-Identität, die als Einbettungsidentität bezeichnet wird, authentifiziert sich also mit Microsoft Entra ID. Die einbettende Identität kann ein Dienstprinzipal oder ein Hauptbenutzerkonto sein (wird später beschrieben).

Der Authentifizierungsflow versucht, ein Microsoft Entra-Token auf eine Weise abzurufen, bei welcher der Authentifizierungsdienst die Benutzer nicht zur Eingabe zusätzlicher Informationen auffordern kann. Nachdem sich die App-Benutzer authentifiziert haben – es kann jede beliebige Authentifizierungsmethode verwendet werden –, nutzt die App die einbettende Identität, um ein Microsoft Entra-Token mithilfe eines nicht interaktiven Authentifizierungsflows abzurufen.

Wenn die App ein Microsoft Entra-Token abruft, speichert sie es zwischen und verwendet es dann zum Generieren eines Einbettungstokens. Ein Einbettungstoken stellt Fakten zu Power BI-Inhalten und dem Zugriff darauf dar. Mit dem Einbettungstoken bettet die App Inhalte in ein iframe-HTML-Element ein.

Dienstprinzipal

Eine App kann einen Dienstprinzipal verwenden, um ein Microsoft Entra-Token zu erwerben. Ein Microsoft Entra-Dienstprinzipal ist eine von Apps verwendete Sicherheitsidentität. Sie definiert die Zugriffsrichtlinie und Berechtigungen für die App im Microsoft Entra-Mandanten, wodurch Kern-Features wie die Authentifizierung der App während der Anmeldung und Autorisierung während des Ressourcenzugriffs aktiviert werden. Ein Dienstprinzipal kann sich mithilfe eines App-Geheimnisses oder eines Zertifikats authentifizieren. Ein Dienstprinzipal kann nur dann Power BI-REST-APIs verwenden, wenn die Mandanteneinstellung Dienstprinzipalen die Verwendung von Power BI-APIs gestatten aktiviert ist und der Dienstprinzipal zu einer zulässigen Gruppe gehört.

Tipp

Es empfiehlt sich, für Produktions-Apps einen Dienstprinzipal zu verwenden. Sie bietet die höchste Sicherheit und aus diesem Grund ist sie der Ansatz, der von Microsoft Entra ID empfohlen wird. Außerdem unterstützt er eine bessere Automatisierung und Skalierung, und es gibt weniger Verwaltungsaufwand. Allerdings sind für die Einrichtung und Verwaltung Power BI-Administratorrechte erforderlich.

Hauptbenutzerkonto

Eine App kann mithilfe eines Hauptbenutzerkontos ein AD-Token abrufen. Ein Hauptbenutzerkonto ist ein regulärer Microsoft Entra-Benutzer. In Power BI muss das Konto der Administrator- oder Mitgliedsrolle des Arbeitsbereichs angehören, damit Arbeitsbereichsinhalte eingebettet werden können. Es muss außerdem über eine Power BI Pro- oder Power BI Premium-Einzelbenutzerlizenz (PPU) verfügen.

Hinweis

Hauptbenutzerkonten können nicht zum Einbetten paginierter Berichte verwendet werden.

Weitere Informationen zum Einbetten von Identitäten finden Sie unter Einrichten von Berechtigungen zum Einbetten von Power BI-Inhalten.

Lizenzierung

Beim Einbetten von Power BI-Inhalten für Ihre Kunden müssen Sie sicherstellen, dass sich die Inhalte in einem Arbeitsbereich befinden, der einen der folgenden Lizenzmodi aufweist:

Jede Lizenzmodusoption erfordert den Kauf eines kostenpflichtigen Produkts, das eine kapazitätsbasierte Lizenz darstellt. Eine kapazitätsbasierte Lizenz ermöglicht es Ihnen, reservierte Kapazitäten zu erstellen.

Kapazitäten stellen die Computeressourcen dar, die für die Verarbeitung von Workloads, z. B. das Rendering von Berichten und die Datenaktualisierung, erforderlich sind. Reservierte Kapazitäten sind von den Workloads anderer Kunden isoliert, sodass sie eine Skalierung bieten, die eine zuverlässige und konsistente Leistung liefern kann.

Hinweis

Es ist nicht möglich, das Szenario Einbetten für Ihre Kunden in Produktionsumgebungen mit Fabric Free, Power BI Pro oder der Power BI Premium-Einzelbenutzerlizenz zu verwenden.

Weitere Informationen zu Produkten und Lizenzierung finden Sie unter Auswählen des geeigneten Analytics-Produkts für Power BI Embedded.

Client-APIs für Power BI

Die Power BI-Client-APIs ermöglichen es Entwickler*innen, eine enge Integration zwischen der benutzerdefinierten Anwendung und dem Power BI-Inhalt zu erreichen. Sie entwickeln die Anwendung, indem sie benutzerdefinierte Logik mit JavaScript oder TypeScript schreiben, die im Browser ausgeführt wird.

Die Anwendung kann Vorgänge einrichten und automatisieren und auf die von Benutzer*innen eingeleiteten Aktionen reagieren. Darüber hinaus ist es möglich, Power BI-Funktionen zu integrieren, einschließlich Navigation, Filtern und Slicern, Menüvorgängen, Layout und Textmarken.

Tipp

Der Power BI Embedded Analytics Playground ist eine Website, auf der Sie eingebettete Power BI-Analysen kennenlernen, erkunden und ausprobieren können. Er enthält eine Entwickler-Sandbox für praktische Erfahrungen, die die Client-APIs mit Beispielen von Power BI-Inhalten oder Ihren eigenen Inhalten verwenden. Codeausschnitte und Showcases stehen ebenfalls für Sie bereit.

Weitere Informationen finden Sie unter Was ist der Power BI Embedded Analytics Playground?

Erzwingen von Datenberechtigungen

Wenn die Benutzer*innen der App nur Zugriff auf eine Teilmenge der Daten haben sollen, müssen Sie eine Lösung entwickeln, die den Zugriff auf die Daten des Power BI-Semantikmodells (früher als Dataset bezeichnet) einschränkt. Der Grund dafür kann sein, das einige Benutzer*innen keine Berechtigung zum Anzeigen bestimmter Daten haben, z. B. Verkaufsergebnisse anderer Vertriebsregionen. Das Erreichen dieser Anforderung umfasst häufig das Einrichten der Sicherheit auf Zeilenebene (RLS), die die Definition von Rollen und Regeln umfasst, die Modelldaten filtern.

Wenn Sie das Szenario Für Ihre Kunden verwenden, muss die App die effektive Identität des Einbettungstokens festlegen, um den Zugriff auf Daten einzuschränken. Diese effektive Identität bestimmt, wie Power BI eine Verbindung mit dem Modell herstellt und die RLS-Rollen erzwingt. Wie Sie die effektive Identität einrichten, hängt vom Typ des Power BI-Semantikmodells ab.

Weitere Informationen zu RLS-Rollen für eingebettete Inhalte finden Sie unter Erzwingen von Datenberechtigungen für eingebettete Power BI-Analysen.

Mehrinstanzenfähige Anwendungen

Mehrere Organisationen können eine mehrinstanzenfähige App verwenden, bei der jede Organisation ein Mandant ist. Eine mehrinstanzenfähige Anwendung verwendet zum Einbetten von Power BI-Analysen das Szenario Einbetten für Ihre Kunden, da auch externe Benutzer*innen die Anwendung nutzen. Beim Entwerfen einer mehrinstanzenfähigen App können Sie aus zwei verschiedenen Mandantenmodellen auswählen.

Der empfohlene Ansatz besteht darin, das Modell mit Arbeitsbereichstrennung zu verwenden. Sie können diesen Ansatz erreichen, indem Sie einen Power BI Arbeitsbereich für jeden Mandanten erstellen. Jeder Arbeitsbereich enthält Power BI-Artefakte, die für diesen Mandanten spezifisch sind, und die Semantikmodelle stellen eine Verbindung mit einer separaten Datenbank für jeden Mandanten her.

Tipp

Weitere Informationen zum Modell zur Arbeitsbereichstrennung finden Sie unter Automatisieren der Arbeitsbereichstrennung. Weitere Informationen zu skalierbaren mehrinstanzenfähigen Apps finden Sie unter Dienstprinzipalprofile für mehrinstanzenfähige Apps in Power BI Embedded.

Alternativ steht das Modell der einzelnen Datenbank für mehrere Kunden zur Verfügung. Bei diesem Modell erreicht Ihre Lösung die Trennung mit einem einzelnen Arbeitsbereich, der eine Reihe von Power BI-Elementen umfasst, die von allen Mandanten gemeinsam verwendet werden. In den Semantikmodellen definierte RLS-Rollen helfen dabei, die Daten sicherer zu filtern, damit Organisationen nur ihre eigenen Daten sehen.

Einbetten ohne Code

Das Entwickeln einer programmgesteuerten Lösung erfordert Wissen, Zeit und Mühe. Beachten Sie, dass es die Einbettungsmethode Einbettung ohne Code gibt, die Personen, die keine Entwickler*innen sind, zum Einbetten von Power BI-Berichten oder Dashboards in Power Pages nutzen können.

Gatewaysetup

Beim Zugriff auf Datenquellen, die sich im privaten Organisationsnetzwerk oder in einem virtuellen Netzwerk befinden, ist normalerweise ein Datengateway erforderlich. Ein Gateway erfüllt zwei Zwecke: Aktualisieren importierter Daten oder Anzeigen eines Berichts, der eine Liveverbindung oder ein DirectQuery-Semantikmodell abfragt.

Hinweis

Anstelle von Gateways im persönlichen Modus wird dringend ein zentrales Datengateway im Standardmodus empfohlen. Im Standardmodus unterstützt das Datengateway Liveverbindungs- und DirectQuery-Vorgänge (zusätzlich zu geplanten Datenaktualisierungsvorgängen).

Systemüberwachung

Das Aktivitätsprotokoll erfasst Benutzeraktivitäten, die im Power BI-Dienst stattfinden. Power BI-Administratoren können die erfassten Aktivitätsprotokolldaten für Auditzwecke verwenden, um Nutzungsmuster und Akzeptanz zu verstehen.

Weitere Informationen zu Power BI Embedded Analytics finden Sie im Lernpfad Einbetten von Power BI-Analysen.

Sie können auch den Kurs Power BI-Entwickler in einem Tag durcharbeiten. Dazu gehört ein Kit zum Selbststudium, das Sie durch den Entwicklungsprozess einer ASP.NET Core MVC-App führt.

Weitere nützliche Szenarios, die Ihnen bei Entscheidungen zur Power BI-Implementierung helfen können, finden Sie im Artikel Power BI-Verwendungsszenarios.