Einführung
Um Power BI-Inhalte in Ihre App einzubetten, müssen Sie die so App entwickeln, dass sie ein Zugriffstoken erwirbt. Die Art des Authentifizierungsflusses (und des Zugriffstokens) hängt vom Einbettungsszenario ab.
Hinweis
Informationen zu Einbettungsszenarios finden Sie im Modul Auswählen eines eingebetteten Power BI-Analyseprodukts.
Gleich welches Szenario Sie verwenden, muss Ihre App ein Azure AD-Token erwerben. Ein Azure AD-Token enthält Ansprüche zum Identifizieren erteilter Berechtigungen für die Power BI REST-API. Es verfügt über eine Ablaufzeit, die in der Regel eine Stunde beträgt. Für alle API-Vorgänge muss ein gültiges Azure AD-Token vorhanden sein.
Verwenden eines interaktiven Authentifizierungsflusses
Zum Abrufen eines Azure AD-Tokens für das Szenario Für Ihre Organisation verwendet die App einen interaktiven Authentifizierungsfluss. Bei einem interaktiven Authentifizierungsfluss kann Azure AD die Benutzer*innen auffordern, sich mit ihrem Benutzernamen und Kennwort und (möglicherweise) unter Verwendung der Multi-Faktor-Authentifizierung (MFA) anzumelden. Azure AD kann den Benutzer dann auch auffordern, mehr Zustimmung zu Ressourcen zu erteilen (bei der erstmaligen Anmeldung bei der App erforderlich).
Hinweis
Wenn die App die Verwendung von einmaligem Anmelden (Single Sign-On, SSO) ermöglicht, müssen Benutzer sich nicht jedes Mal zur Verwendung anmelden. Der Authentifizierungsprozess speichert Anmeldeinformationen bei der erstmaligen Authentifizierung der Benutzer*innen in einem Sitzungscookie zwischen, und die App kann diese zwischengespeicherten Anmeldeinformationen bis zu ihrem Ablauf verwenden, der standardmäßig nach 90 Tagen erfolgt.
Nach dem Erwerb sollte Ihre App das Azure AD-Token zwischenspeichern. Die App verwendet es anschließend, um Power BI-Inhalte einzubetten, für die der Benutzer über die Berechtigung zum Arbeiten verfügt.
Das folgende Video veranschaulicht die Verwendung eines interaktiven Authentifizierungsflusses.
In Lerneinheit 3 erfahren Sie, wie Sie Azure AD Token erwerben.
Verwenden eines nicht interaktiven Authentifizierungsflusses
Zum Abrufen eines Azure AD-Tokens für das Szenario Für Ihre Kunden verwendet die App einen nicht interaktiven Authentifizierungsfluss. Die App-Benutzer*innen müssen nicht über ein Power BI-Konto verfügen, und selbst wenn sie über ein Konto verfügen, wird dieses nicht verwendet. Eine dedizierte Azure AD-Identität, eine sogenannte Einbettungsidentität, authentifiziert sich gegenüber Azure AD. Eine Einbettungsidentität kann ein Dienstprinzipal oder ein Hauptbenutzerkonto sein.
Ein nicht interaktiver Authentifizierungsfluss wird auch als automatische Authentifizierung bezeichnet. Dabei wird versucht, ein Azure-Token auf eine Weise zu erwerben, bei der der Authentifizierungsdienst den Benutzer nicht zur Eingabe zusätzlicher Informationen auffordern kann. Nachdem sich der App-Benutzer bei Ihrer App authentifiziert hat (die App kann jede von Ihnen gewählte Authentifizierungsmethode verwenden), verwendet die App die Einbettungsidentität, um ein Azure AD-Token mithilfe eines nicht interaktiven Authentifizierungsflusses abzurufen.
Sobald Ihre App ein Azure AD-Token erwirbt, wird es zwischengespeichert und anschließend zum Generieren eines Einbettungstokens verwendet. Ein Einbettungstoken stellt Fakten zu Power BI-Inhalten und dem Zugriff darauf dar.
Insbesondere beschreibt ein Einbettungstoken:
- Ansprüche auf bestimmte Power BI-Inhalte
- Die Zugriffsebene, die Sie auf Anzeigen, Erstellen oder Bearbeiten festlegen (Die Ebenen „Erstellen“ und „Bearbeiten“ gelten nur für Power BI-Berichte.)
- Die Tokenlebensdauer, die bestimmt, wann das Token abläuft
- Optional einen Anspruch auf einen Zielarbeitsbereich zum Speichern neuer Berichte
- Optional eine oder mehrere wirksame Identitäten, damit Power BI Datenberechtigungen durchsetzen kann
Hinweis
Wenn Sie mehr über wirksame Identitäten erfahren möchten, arbeiten Sie sich durch das Modul Erzwingen von Datenberechtigungen für eingebettete Power BI-Analysen.
Sehen Sie sich das folgende Video an, das die Verwendung eines nicht interaktiven Authentifizierungsflusses veranschaulicht.
In Lerneinheit 3 erfahren Sie, wie Einbettungstoken erworben werden.
Verwenden eines Dienstprinzipals
Ihre App kann einen Dienstprinzipal verwenden, um ein Azure AD-Token zu erwerben. Ein Azure-Dienstprinzipal ist eine Sicherheitsidentität, die von Apps verwendet wird. Er definiert die Zugriffsrichtlinie und die Berechtigungen für die App im Azure AD-Mandanten, wodurch Kernfunktionen wie die Authentifizierung der App während der Anmeldung und die Autorisierung während des Ressourcenzugriffs ermöglicht werden. Ein Dienstprinzipal kann sich mithilfe eines App-Geheimnisses oder eines Zertifikats authentifizieren. Es empfiehlt sich, Dienstprinzipale für Produktions-Apps mithilfe von Zertifikaten anstelle von geheimen Schlüsseln zu sichern, da dies sicherer ist.
Wenn die Einbettungsidentität Ihrer App ein Dienstprinzipal ist, muss zuerst ein Power BI-Mandantenadministrator zuerst Folgendes ausführen:
- Die Verwendung von Dienstprinzipalen aktivieren
- Eine Sicherheitsgruppe registrieren, die sie enthält
Die folgende Abbildung zeigt die Entwicklereinstellungen (in den Mandanteneinstellungen des Administratorportals), in denen ein Power BI-Administrator Dienstprinzipale für die Verwendung von Power BI-APIs aktivieren kann.
Wichtig
Wenn Administrator*innen die Verwendung von Dienstprinzipalen mit Power BI zulassen, sind die Azure AD-Berechtigungen der App nicht mehr wirksam. Von diesem Punkt an werden die Berechtigungen der App durch Administratoren im Power BI Admin-Portal verwaltet.
In Power BI muss der Dienstprinzipal zur Rolle Arbeitsbereichsadministrator oder Mitglied gehören, damit Arbeitsbereichsinhalte eingebettet werden können. Nur neue Arbeitsbereiche unterstützen Rollenzuweisungen zu einem Dienstprinzipal, und persönliche Arbeitsbereiche werden nicht unterstützt.
Hinweis
Es ist nicht möglich, sich mit einem Dienstprinzipal beim Power BI-Dienst anzumelden.
Weitere Informationen finden Sie unter
- Anwendungs- und Dienstprinzipalobjekte in Azure Active Directory (Dienstprinzipalobjekt)
- Einbetten von Power BI-Inhalten mit Dienstprinzipal und Zertifikat
Verwenden eines Hauptbenutzerkontos
Ihre App kann ein Hauptbenutzerkonto verwenden, um ein AD-Token zu erwerben. Ein Hauptbenutzerkonto ist ein regulärer Azure AD-Benutzer. In Power BI muss das Konto zur Rolle Arbeitsbereichsadministrator oder Mitglied gehö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.
Vergleichen der Einbettungsidentitätstypen
Es empfiehlt sich, für Produktions-Apps einen Dienstprinzipal zu verwenden. Er bietet die höchste Sicherheit und stellt aus diesem Grund den von Azure AD empfohlenen Ansatz dar. 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.
Sie können die Verwendung eines Hauptbenutzerkontos für Entwicklungs- oder Test-Apps in Betracht ziehen. Es ist einfach einzurichten, und es kann für die Anmeldung beim Power BI-Dienst verwendet werden, was die Behebung von Problemen vereinfacht. Jedoch ist es mit Kosten verbunden, da es eine Power BI Pro- oder PPU-Lizenz erfordert. Außerdem kann für ein Hauptbenutzerkonto keine MFA vorgeschrieben werden.
In der folgenden Tabelle werden die beiden Typen von Einbettungsidentitäten zusammenfassend verglichen.
Element | Dienstprinzipal | Hauptbenutzerkonto |
---|---|---|
Azure AD-Objekttyp | Dienstprinzipal | Benutzer |
Verwaltung von Anmeldeinformationen | Verwenden von Geheimnissen oder Zertifikaten mit regelmäßiger Rotation | Ausführen häufiger Kennwortupdates |
Power BI-Mandanteneinstellungen | Power BI-Administrator*innen müssen die Verwendung von Dienstprinzipalen zulassen, und es wird empfohlen, Dienstprinzipale einer dedizierten Sicherheitsgruppe zuzuordnen. | Nicht verfügbar |
Verwendung der Power BI-REST-API | Einige Administrator- und Dataflowvorgänge werden nicht unterstützt. Sie können die Dienstprinzipalauthentifizierung für schreibgeschützte Administrator-APIs aktivieren. | Alle Vorgänge werden unterstützt |
Anmeldung beim Power BI-Dienst | Nicht unterstützt | Unterstützt |
Lizenzierung | Nicht erforderlich | Power BI Pro oder PPU |
Azure AD-Empfehlung | Empfohlen (insbesondere für Produktions-Apps) | Nicht empfohlen (aber möglicherweise für Entwicklungs- oder Test-Apps geeignet) |
Zusätzliche Informationen | MFA kann nicht vorgeschrieben werden; keine Einbettung paginierter Berichte |