Freigeben über


Problembehandlung bei eingebetteten Anwendungen

In diesem Artikel werden einige häufige Probleme erläutert, die beim Einbetten von Inhalten aus Power BI auftreten können.

Problembehandlungstools

Fiddler-Ablaufverfolgung

Fiddler ist ein kostenloses Tool von Telerik, das den HTTP-Datenverkehr überwacht. Sie können den Datenverkehr mit den Power BI-APIs vom Clientcomputer anzeigen. Dieses Tool zeigt möglicherweise Fehler und andere verwandte Informationen an.

Screenshot des Ausgabefensters des Fiddler-Tools, in dem der HTTP-Datenverkehr der Power BI-API angezeigt wird.

F12 im Browser für das Frontend-Debugging

Mit der Taste F12 wird das Entwicklerfenster in Ihrem Browser gestartet. Mit diesem Tool können Sie den Netzwerkdatenverkehr betrachten und weitere wertvolle Informationen anzeigen.

Screenshot der Registerkarte

Extrahieren von Fehlerdetails aus der Power BI-Antwort

Dieser Codeausschnitt zeigt, wie die Fehlerdetails aus einer HTTP-Ausnahme extrahiert werden:

public static string GetExceptionText(this HttpOperationException exc)
{
    var errorText = string.Format("Request: {0}\r\nStatus: {1} ({2})\r\nResponse: {3}",
    exc.Request.Content, exc.Response.StatusCode, (int)exc.Response.StatusCode, exc.Response.Content);
    if (exc.Response.Headers.ContainsKey("RequestId"))
    {
        var requestId = exc.Response.Headers["RequestId"].FirstOrDefault();
        errorText += string.Format("\r\nRequestId: {0}", requestId);
    }

    return errorText;
}

Es wird empfohlen, die Anforderungs-ID (und Fehlerdetails zur Problembehandlung) zu protokollieren. Geben Sie beim Aufrufen des Microsoft-Supports die Anforderungs-ID an.

App-Registrierung

Fehler bei der App-Registrierung

Fehlermeldungen im Azure-Portal oder auf der Registrierungsseite der Power BI-App benachrichtigen Sie, wenn Sie nicht über ausreichende Berechtigungen zum Registrieren Ihrer App verfügen. Um eine Anwendung zu registrieren, müssen Sie ein Administrator im Microsoft Entra-Mandanten sein, oder Anwendungsregistrierungen müssen für Nicht-Administratorbenutzer aktiviert sein.

Power BI-Dienst wird beim Registrieren einer neuen App nicht im Azure-Portal angezeigt

Mindestens ein Benutzer muss für Power BI registriert sein. Wenn der Power BI-Dienst nicht in der API-Liste aufgeführt wird, ist keine benutzende Person für Power BI registriert.

Was ist der Unterschied zwischen einer Anwendungsobjekt-ID und einer Prinzipalobjekt-ID?

Beim Registrieren einer Microsoft Entra-App gibt es zwei Parameter, die als Objekt-ID bezeichnet werden. In diesem Abschnitt wird der Zweck der einzelnen Parameter und deren Abrufen erläutert.

Anwendungsobjekt-ID

Das Anwendungsobjekt ID, auch als Objekt-IDbezeichnet, ist die eindeutige ID Ihres Microsoft Entra-Anwendungsobjekts.

Um die Anwendungsobjekt-ID abzurufen, navigieren Sie zu Ihrer Microsoft Entra-App, und kopieren Sie sie aus der Übersicht.

Screenshot des Azure-Portalfensters, in dem die Objekt-ID im Blatt

Prinzipalobjekt-ID

Die Prinzipalobjekt-ID, auch bekannt als Objekt-ID, ist die eindeutige ID des Dienstprinzipalobjekts, das Ihrer Microsoft Entra-Anwendung zugeordnet ist.

Um Ihre Hauptobjekt-ID abzurufen, navigieren Sie zu Ihrer Microsoft Entra-App, und wählen Sie unter Übersichtden App-Link in Verwaltete Anwendung im lokalen Verzeichnisaus.

Screenshot des Azure-Portalfensters, in dem die Option

Kopieren Sie im Abschnitt Eigenschaften die Objekt-ID.

Screenshot des Azure-Portalfensters, in dem die Prinzipalobjekt-ID im Eigenschaftenabschnitt im Blatt

Authentifizierung

Fehler bei der Authentifizierung mit AADSTS70002 oder AADSTS50053

(AADSTS70002: Fehler beim Überprüfen der Anmeldeinformationen. AADSTS50053: Sie haben versucht, sich zu oft mit einer falschen Benutzer-ID oder einem falschen Kennwort anzumelden)

Wenn Sie power BI Embedded und die direkte Microsoft Entra-Authentifizierung verwenden, erhalten Sie möglicherweise eine Meldung wie die vorherige Nachricht, wenn Sie versuchen, sich anzumelden, da die direkte Authentifizierung nicht aktiviert ist.

Sie können die direkte Authentifizierung mithilfe einer Microsoft Entra-Richtlinie reaktivieren, die für die Organisation oder einen Dienstprinzipal gilt.

Es wird empfohlen, diese Richtlinie nur pro App zu aktivieren.

Zum Erstellen dieser Richtlinie müssen Sie ein globaler Administrator des Verzeichnisses sein, in dem Sie die Richtlinie erstellen und zuweisen. Hier sehen Sie ein Beispielskript zum Erstellen der Richtlinie und zum Zuweisen dieser Richtlinie zum SP der Anwendung:

  1. Installieren Sie das Microsoft Graph PowerShell SDK.

  2. Führen Sie die folgenden PowerShell-Befehlszeilenbefehle aus (stellen Sie sicher, dass die Variable $sp nicht mehr als eine Anwendung als Ergebnis hat).

    Connect-MgGraph -Scopes "Directory.Read.All","Policy.ReadWrite.ApplicationConfiguration"
    
    $sp = Get-MgServicePrincipal -Filter "DisplayName eq 'Name_Of_Application'"
    
    $policy = New-MgBetaPolicyActivityBasedTimeoutPolicy -Definition @("{`"AllowCloudPasswordValidation`":true}") `
       -DisplayName EnableDirectAuth -IsOrganizationDefault:$false
    
    $params = @{
       "@odata.id" = "https://graph.microsoft.com/v1.0/policies/claimsMappingPolicies/$policy.Id"
    }
    New-MgBetaServicePrincipalClaimMappingPolicyByRef -ServicePrincipalId $sp.Id `
       -BodyParameter $params
    

Warten Sie nach der Zuweisung der Richtlinie zwischen 15 und 20 Sekunden, bis die Zuweisung weitergegeben wurde, bevor Sie sie testen.

Fehler beim Generieren des Tokens bei der Bereitstellung der effektiven Identität

Bei GenerateToken kann bei Angabe einer effektiven Identität aus verschiedenen Gründen ein Fehler auftreten:

  • Das semantische Modell unterstützt keine effektive Identität.
  • Der Benutzername wurde nicht angegeben.
  • Es wurde keine Rolle angegeben.
  • DatasetId wurde nicht bereitgestellt.
  • Der Benutzer verfügt nicht über die richtigen Berechtigungen.

Führen Sie die folgenden Schritte aus, um das Problem zu ermitteln:

  • Führen Sie aus, um den Datensatzabzurufen. Ist die Eigenschaft IsEffectiveIdentityRequired wahr?
  • Der Benutzername ist für jedes EffectiveIdentityerforderlich.
  • Wenn IsEffectiveIdentityRolesRequired true ist, muss eine Rolle angegeben werden.
  • DatasetId ist für jedes EffectiveIdentityerforderlich.
  • Für Analysis Services muss der Hauptbenutzer ein Gatewayadministrator sein.

AADSTS90094: Die Erteilung erfordert Administratorberechtigungen.

Symptome:

Wenn ein Nicht-Administrator versucht, sich zum ersten Mal bei einer Anwendung anzumelden, während er die Zustimmung erteilt, wird eine der folgenden Fehler angezeigt:

  •   ConsentTest needs permission to access resources in your organization that only an admin can grant. Ask an admin to grant permission to this app before you can use it.
    
  •   AADSTS90094: The grant requires admin permission.
    

    Screenshot des Anmeldedialogfelds des Azure-Portalfensters, in dem der Berechtigungsfehler

Ein Administratorbenutzer kann sich anmelden und die Zustimmung erfolgreich erteilen.

Ursache:

Die Zustimmung des Benutzers ist für den Mandanten deaktiviert.

Es sind mehrere Korrekturen möglich:

  • Benutzergenehmigung für den gesamten Mandanten aktivieren (alle Benutzer, alle Anwendungen):
  1. Navigieren Sie im Azure-Portal zu Microsoft Entra ID>Benutzer und Gruppen>Benutzereinstellungen.
  2. Aktivieren Sie die -Einstellung "Benutzer können Apps die Zustimmung erteilen, in ihrem Namen auf Unternehmensdaten zuzugreifen" und speichern Sie die Änderungen.

Screenshot des Azure-Portals.

  • Ein Administrator kann der Anwendung Berechtigungen erteilen – entweder für den gesamten Mandanten oder einen bestimmten Benutzer.

CS1061-Fehler

Laden Sie Microsoft.IdentityModel.Clients.ActiveDirectory herunter, wenn der folgende Fehler auftritt:

'AuthenticationContext' does not contain a definition for 'AcquireToken' and no accessible 'AcquireToken' accepting a first argument of type 'AuthenticationContext' could be found (are you missing a using directive or an assembly reference?)

Microsoft Entra-Token für einen anderen Mandanten (Gastbenutzer)

Wenn Sie für Ihre Organisationeinbetten, müssen Sie die Mandanten-ID im parameter authorityUri angeben, damit Microsoft Entra-Gastbenutzer auf Ihre Inhalte zugreifen können.

  • URL für die Authentifizierung beim Mandanten Ihrer Organisation:

    https://login.microsoftonline.com/common/v2.0

  • URL für die Authentifizierung eines Microsoft Entra-Gastbenutzers:

    https://login.microsoftonline.com/<tenant ID>

Um Ihre Mandanten-ID zu finden, können Sie die Instruktionen in zum Suchen der Microsoft Entra-Mandanten-ID und des Hauptdomänennamensverwenden.

Weitere Informationen finden Sie unter Mehrinstanzenfähigkeit Ihrer Anwendung.

Datenquellen

ISV möchte unterschiedliche Anmeldeinformationen für dieselbe Datenquelle haben

Eine Datenquelle kann über einen einzelnen Satz von Anmeldeinformationen für einen Masterbenutzer verfügen. Wenn Sie unterschiedliche Anmeldeinformationen verwenden müssen, erstellen Sie weitere Masterbenutzer. Weisen Sie dann den unterschiedlichen Kontexten der Hauptbenutzer die verschiedenen Anmeldeinformationen zu, und betten Sie sie mithilfe des Microsoft Entra-Tokens dieses Benutzers ein.

Problembehandlung ihrer eingebetteten Anwendung mit dem IError-Objekt

Verwenden Sie das IError-Objekt, das vom Fehlerereignis aus dem JavaScript SDK- zurückgegeben wird, um Ihre Anwendung zu debuggen und die Ursache Ihrer Fehler besser zu verstehen.

Nach dem Abrufen des IError-Objekts sollten Sie sich die entsprechende allgemeine Fehlertabelle ansehen, die dem verwendeten Einbettungstyp entspricht. Vergleichen Sie die IError-Eigenschaften mit den Eigenschaften in der Tabelle, und suchen Sie die möglichen Gründe für den Fehler.

Typische Fehler beim Einbetten für Power BI-Benutzer

Nachricht Detaillierte Nachricht Fehlercode Mögliche Gründe
TokenExpired Zugriffstoken ist abgelaufen, übermitteln Sie es erneut mit einem neuen Zugriffstoken. 403 Abgelaufenes Token
PowerBIEntityNotFound Fehler beim Abrufen des Berichts. 404
  • Falsche Berichts-ID
  • Der Bericht ist nicht vorhanden.
  • Ungültige Parameter powerbiToken-Parameter nicht angegeben N/A
  • Kein Zugriffstoken bereitgestellt
  • Keine Berichts-ID angegeben
  • LoadReportFailed Fehler beim Initialisieren : Cluster konnte nicht aufgelöst werden 403
  • Ungültiges Zugriffstoken
  • Der Einbettungstyp stimmt nicht mit dem Tokentyp überein.
  • PowerBINotAuthorizedException Fehler beim Abrufen des Berichts. 401
  • Falsche Gruppen-ID
  • Nicht autorisierte Gruppe
  • TokenExpired Das Zugriffstoken ist abgelaufen. Senden Sie es erneut mit einem neuen Zugriffstoken. Ein Berichtsvisual mit dem folgenden Titel konnte nicht gerendert werden: Titel des Visuals N/A
  • Abfragedaten
  • Abgelaufenes Token
  • OpenConnectionError Das visuelle Element kann nicht angezeigt werden. Ein Berichtsvisual mit dem folgenden Titel konnte nicht gerendert werden: Titel des Visuals N/A Kapazität angehalten oder gelöscht, während ein Bericht mit Bezug zur Kapazität in einer Sitzung geöffnet war
    ExplorationContainer_FailedToLoadModel_DefaultDetails Das diesem Bericht zugeordnete Modellschema konnte nicht geladen werden. Stellen Sie sicher, dass Sie über eine Verbindung mit dem Server verfügen, und versuchen Sie es erneut. N/A
  • Kapazität angehalten
  • Kapazität gelöscht
  • Typische Fehler beim Einbetten für Nicht-Power BI-Benutzer (mit einem Einbettungstoken)

    Nachricht Detaillierte Nachricht Fehlercode Mögliche Gründe
    TokenExpired Zugriffstoken ist abgelaufen, übermitteln Sie es erneut mit einem neuen Zugriffstoken. 403 Abgelaufenes Token
    LoadReportFailed Fehler beim Abrufen des Berichts. 404
  • Falsche Berichts-ID
  • Der Bericht ist nicht vorhanden.
  • LoadReportFailed Fehler beim Abrufen des Berichts. 403 Berichts-ID stimmt nicht mit dem Token überein.
    LoadReportFailed Fehler beim Abrufen des Berichts. 500 Bericht-ID ist keine GUID
    Ungültige Parameter powerbiToken-Parameter nicht angegeben N/A
  • Kein Zugriffstoken bereitgestellt
  • Keine Berichts-ID angegeben
  • LoadReportFailed Fehler beim Initialisieren : Cluster konnte nicht aufgelöst werden 403 Falscher Tokentyp oder ungültiges Token
    PowerBINotAuthorizedException Fehler beim Abrufen des Berichts. 401 Falsche/nicht autorisierte Gruppen-ID
    TokenExpired Das Zugriffstoken ist abgelaufen. Senden Sie es erneut mit einem neuen Zugriffstoken. Ein Berichtsvisual mit dem folgenden Titel konnte nicht gerendert werden: Titel des Visuals N/A
  • Abfragedaten
  • Abgelaufenes Token
  • OpenConnectionError Das visuelle Element kann nicht angezeigt werden. Ein Berichtsvisual mit dem folgenden Titel konnte nicht gerendert werden: Titel des Visuals N/A Kapazität angehalten oder gelöscht, während ein Bericht mit Bezug zur Kapazität in einer Sitzung geöffnet war
    ExplorationContainer_FailedToLoadModel_DefaultDetails Das diesem Bericht zugeordnete Modellschema konnte nicht geladen werden. Stellen Sie sicher, dass Sie über eine Verbindung mit dem Server verfügen, und versuchen Sie es erneut. N/A
  • Kapazität angehalten
  • Kapazität gelöscht
  • Fehler beim Abrufen des Berichts – Fehler 401 – löst sich selbst

    Manchmal erhalten Benutzende im Szenario User Owns Data den Fehler 401, der sich nach dem Zugriff auf das Power BI-Portal selbst löst. Wenn der Fehler 401 auftritt, fügen Sie den RefreshUser Permissions Aufruf in der App hinzu, wie in Aktualisierung der Benutzerberechtigungenerläutert.

    Semantische Modelle

    Verwalten, welchen Teil der Daten Ihre Benutzer sehen können

    Jeder Benutzer mit Leseberechtigungen für ein semantisches Modell kann das gesamte Schema (Tabellen, Spalten und Measures) und alle Daten anzeigen. Sie können die Anzeigeberechtigungen für unformatierte und aggregierte Daten nicht separat im selben Semantikmodell steuern.

    Um zu verwalten, welchen Teil der Daten Ihre Benutzer anzeigen können, verwenden Sie eine der folgenden Methoden:

    • Filterung auf Zeilenebene mithilfe von Power BI Sicherheit auf Zeilenebene (RLS).

    • OLS-Sicherheit auf Objektebene.

    • Trennen Sie die Daten in verschiedene Semantikmodelle. Sie können z. B. ein Semantikmodell erstellen, das nur aggregierte Daten enthält, und Ihren Benutzern nur Zugriff auf dieses semantische Modell gewähren.

    Inhaltsrendering

    Um Renderingprobleme in eingebetteten Power BI-Elementen (z. B. Berichten und Dashboards) zu beheben, lesen Sie diesen Abschnitt.

    Überprüfen, ob das Power BI-Element im Power BI-Dienst geladen wird

    Um Probleme mit Ihrer Anwendung oder der einbettenden APIsauszuschließen, überprüfen Sie, ob das Element im Power BI-Dienst (powerbi.com) angezeigt werden kann.

    Überprüfen Sie, ob das Power BI-Element in der eingebetteten Power BI-Analyse-Spielwiese geladen wird.

    Um Probleme mit Ihrer Anwendung auszuschließen, stellen Sie sicher, dass das Power BI-Element im eingebetteten Power BI-Analyse-Playgroundangezeigt werden kann.

    Überprüfen, ob Ihr Zugriffstoken nicht abgelaufen ist

    Für Sicherheitszwecke haben Zugriffstoken (ein Microsoft Entra-Token oder ein Einbettungstoken) eine begrenzte Lebensdauer. Sie sollten Ihr Zugriffstoken ständig überwachen und bei Bedarf aktualisieren. Weitere Informationen finden Sie unter Aktualisieren des Zugriffstokens.

    Leistung

    Um leistungsfähige eingebettete Inhalte zu erhalten, sollten die Bewährten Methoden für Power BI Embedded Analytics eingehalten werden.

    Power BI Embedded– häufig gestellte Fragen

    Weitere Fragen? Fragen sie die Power BI Community-