Felsök ditt inbäddade program
Den här artikeln går igenom några vanliga problem som kan uppstå när du bäddar in innehåll från Power BI.
Verktyg för felsökning
Fiddlerspårning
Fiddler är ett kostnadsfritt verktyg från Telerik som övervakar HTTP-trafik. Du kan se trafiken med Power BI-API:erna från klientdatorn. Det här verktyget visar fel och annan relaterad information.

F12 i webbläsaren för felsökning av klientdelen
F12 startar utvecklarfönstret i din webbläsare. Detta verktyg ger dig möjlighet att titta på nätverkstrafik och annan information.

Extrahera felinformation från Power BI-svaret
Det här kodstycket visar hur man extraherar felinformationen från HTTP-undantaget:
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;
}
Vi rekommenderar att du loggar ID för begäran (och felinformationen för felsökning). Ange ID för begäran när du tar kontakt med Microsoft-supporten.
Appregistrering
Appregistreringsfel
Felmeddelanden på Azure Portal eller Power BI-appregistreringssidan anger bristande behörigheter. Du måste vara en administratör i Azure AD-klienten för att registrera ett program eller så måste programregistreringar vara aktiverade för icke-administratörer.
Power BI-tjänsten visas inte i Azure-portalen när du registrerar en ny app
Minst en användare måste vara registrerad för Power BI. Om du inte ser Power BI-tjänsten i API-listan är ingen användare registrerad för Power BI.
Vad är skillnaden mellan programobjekt-ID och objekt-ID för huvudnamn?
När du registrerar en Azure AD-app finns det två parametrar som kallas objekt-ID. I det här avsnittet beskrivs syftet med varje parameter och hur du hämtar den.
Programobjekt-ID
Programobjektets ID, som även kallas objekt-ID, är det unika ID:t för ditt Azure AD-programobjekt.
Om du vill hämta programmets objekt-ID går du till Azure AD-appen och kopierar den från Översikt.
Objekt-ID för huvudnamn
Objekt-ID:t för huvudobjektet, som även kallas objekt-ID, är det unika ID:t för tjänstens huvudnamnsobjekt som är associerat med ditt Azure AD-program.
Du hämtar objekt-ID:t för ditt huvudnamn genom att gå till Azure AD-appen. Från Översikt väljer du applänken i Hanterat program i den lokala katalogen.
I avsnittet Egenskaper kopierar du objekt-ID:t.
REST-API
API-anropet returnerar 401
En fiddler-avbildning kan krävas för att undersöka vidare. Det nödvändiga behörighetsomfånget kan saknas för det registrerade programmet i Azure AD. Verifiera att det nödvändiga omfånget finns i appregistreringen för Azure AD i Azure-portalen.
API-anropet returnerar 403
En fiddler-avbildning kan krävas för att undersöka vidare. Det kan finnas flera orsaker till ett 403-fel.
- Användaren har överskridit mängden inbäddningstoken som kan skapas på en delad kapacitet. Köp Azure-kapaciteter för att generera inbäddningstoken och tilldela arbetsytan till kapaciteten. Mer information finns på sidan om hur du skapar en Power BI Embedded-kapacitet i Azure Portal.
- Azure AD-autentiseringstoken har upphört att gälla.
- Den autentiserade användaren är inte medlem i gruppen (arbetsytan).
- Den autentiserade användaren är inte administratör för gruppen (arbetsytan).
- Den autentiserade användaren saknar behörighet. Behörigheter kan uppdateras med hjälp av API:et refreshUserPermissions
- Auktoriseringsrubriken är kanske inte korrekt listad. Kontrollera att det inte finns några stavfel.
Programmets serverdel kan behöva uppdatera auktoriseringstoken innan du anropar GenerateToken. Mer information finns i Uppdatera åtkomsttoken.
GET https://wabi-us-north-central-redirect.analysis.windows.net/metadata/cluster HTTP/1.1
Host: wabi-us-north-central-redirect.analysis.windows.net
...
Authorization: Bearer eyJ0eXAiOi...
...
HTTP/1.1 403 Forbidden
...
{"error":{"code":"TokenExpired","message":"Access token has expired, resubmit with a new access token"}}
Hur åtgärdar jag tidsgränsundantag när du använder import- och export-API:er?
När du skickar en Power BI REST API-begäran kan den komma till ett kluster som inte innehåller din klientorganisations data. I sådana fall kan omdirigering av begäran misslyckas på grund av en tidsgräns.
Om du vill åtgärda timeout-undantaget kan du skicka begäran igen med preferClientRouting parametern inställd på true . Om din begäran kommer till fel kluster returnerar Power BI ett 307 Temporary Redirect HTTP-svar. I sådana fall måste du omdirigera din begäran till den nya adressen som anges i svarets HTTPS-platshuvud.
Autentisering
Autentiseringen misslyckades med felet AADSTS90002: Tenant 'authorize' not found (Auktorisering av klient hittades inte)
Om du får meddelanden vid inloggning, till exempel error: invalid_request, error_description: AADSTS90002: Tenant 'authorize' not found är det för att ADAL 4.x inte stöder ”https://login.microsoftonline.com/{Tenant}/oauth2/authorize/” som utfärdar-URL.
Du kan lösa problemet genom att trimma ”oauth2/authorize/” i slutet av utfärdar-URL:en, se Power BI Developer Samples för referens.
Ta en titt på Better Authority validation (Bättre utfärdarvalidering) i den viktiga informationen om ADAL 4.x.
Autentiseringen misslyckades med AADSTS70002 eller AADSTS50053
(AADSTS70002: Error validating credentials (Fel vid validering av autentiseringsuppgifter). AADSTS50053: You've tried to sign in too many times with an incorrect User ID or password (Du har försökt logga in för många gånger med ett felaktigt användar-ID eller lösenord)
Om du använder Power BI Embedded azure AD-direktautentisering och du får meddelanden som loggar in, till exempel error:unauthorized_client, error_description:AADSTS70002: Error validating credentials (Fel vid verifiering av autentiseringsuppgifter). AADSTS50053: Du har försökt logga in för många gånger med ett felaktigt användar-ID eller lösenord, det beror på att direktautentisering inte längre används.
Du kan aktivera funktionen igen med hjälp av en Azure AD-princip som definieras för organisationen eller tjänstens huvudnamn.
Vi rekommenderar att du aktiverar den här principen enbart på appbasis.
Om du vill skapa den här principen måste du vara Global administratör för den katalog där du skapar principen och tilldelar. Här är ett exempelskript för att skapa principen och tilldela den till SP för det här programmet:
Installera förhandsgranskningsmodulen för Azure AD PowerShell.
Kör följande PowerShell-kommandon rad för rad (kontrollera att variabeln $sp inte har mer än ett program som resultat).
Connect-AzureAD
$sp = Get-AzureADServicePrincipal -SearchString "Name_Of_Application"
$policy = New-AzureADPolicy -Definition @("{`"HomeRealmDiscoveryPolicy`":{`"AllowCloudPasswordValidation`":true}}") -DisplayName EnableDirectAuth -Type HomeRealmDiscoveryPolicy -IsOrganizationDefault $false
Add-AzureADServicePrincipalPolicy -Id $sp.ObjectId -RefObjectId $policy.Id
När du har tilldelat principen väntar du ungefär 15–20 sekunder för spridning innan du testar.
Skapa token misslyckas när du anger en effektiv identitet
GenerateToken kan misslyckas med den effektiva identitet som angetts, av några olika skäl.
- Datauppsättningen stöder inte effektiv identitet
- Användarnamn har inte angetts
- Roll har inte angetts
- DatasetId har inte angetts
- Användaren har inte rätt behörighet
Prova stegen nedan för att verifiera vad det är.
- Kör get dataset. Är egenskapen IsEffectiveIdentityRequired sann?
- Användarnamnet är obligatoriskt för alla EffectiveIdentity.
- Om IsEffectiveIdentityRolesRequired är sant, krävs rollen.
- DatasetId är obligatoriskt för alla EffectiveIdentity.
- För Analysis Services måste huvudanvändaren vara en gatewayadministratör.
AADSTS90094: The grant requires admin permission (Beviljandet kräver administratörsbehörigheter)
Symptom:
När en icke-administratörsanvändare försöker logga in i ett program första gången för att bevilja medgivande och följande fel visas:
ConsentTest kräver behörighet som bara kan ges av en administratör för att komma åt resurser i din organisation. Be en administratör bevilja behörighet till den här appen innan du använder den.
AADSTS90094: Beviljandet kräver administratörsbehörighet.

En administratörsanvändare kan logga in och bevilja medgivande.
Rotorsak:
Användargodkännande har inaktiverats för klientorganisationen.
Det finns flera möjliga lösningar:
Aktivera användargodkännande för hela klientorganisationen (alla användare, alla program)
I Azure-portalen navigerar du till Azure Active Directory => Användare och grupper => Användarinställningar
Aktivera ”Användare kan samtycka till att appar får åtkomst till företagsdata för deras räkning” och spara ändringarna.

En administratör kan bevilja behörigheter till programmet – antingen för hela klientorganisationen eller för en viss användare.
CS1061-fel
Ladda ned Microsoft.IdentityModel.Clients.ActiveDirectory om du får ett fel av typen ”'AuthenticationContext' innehåller inte någon definition för ’AcquireToken’ och det gick inte att hitta någon tillgänglig ’AcquireToken’ som tar emot ett första argument av typen ’AuthenticationContext' (saknar du ett användningsdirektiv eller en sammansättningsreferens?)”.
Azure AD-token för en annan klientorganisation (gästanvändare)
När du bäddar in för din organisation måste du ange klient-ID:t i parametern för att ge Azure AD-gästanvändare åtkomst till ditt authorityUri innehåll.
URL för autentisering i organisationens klientorganisation:
https://login.microsoftonline.com/common/v2.0URL för autentisering av en Azure AD-gästanvändare:
https://login.microsoftonline.com/<tenant ID>
Du hittar ditt klient-ID genom att följa anvisningarna i Hitta Microsoft Azure AD klientorganisations-ID och primärt domännamn.
Mer information finns i How to: Sign in any Azure Active Directory user using the multi-tenant application pattern.
Datakällor
ISV vill ha olika autentiseringsuppgifter för samma datakälla
En datakälla kan ha en enda uppsättning autentiseringsuppgifter för en huvudanvändare. Skapa ytterligare huvudanvändare om du behöver använda andra autentiseringsuppgifter. Tilldela därefter de olika autentiseringsuppgifterna i kontexten för varje huvudanvändare och bädda in med hjälp av Azure AD-token för den användaren.
Felsöka inbäddade program med IError-objektet
Använd IError-objektet som returneras av felhändelsen från JavaScript SDK för att felsöka ditt program och bättre förstå orsaken till felen.
När du har hämtat IError-objektet bör du titta på relevant tabell över vanliga fel som passar den inbäddningstyp du använder. Jämför IError-egenskaperna med dem i tabellen och hitta möjliga skäl till felet.
Vanliga fel vid inbäddning för Power BI-användare
| Meddelande | Detaljerat meddelande | Felkod | Möjliga orsaker |
|---|---|---|---|
| TokenExpired | Åtkomsttoken har upphört att gälla, skicka igen med en ny åtkomsttoken | 403 | Token har upphört att gälla |
| PowerBIEntityNotFound | Rapporten kunde inte hämtas | 404 | |
| Ogiltiga parametrar | powerbiToken-parameter har inte angetts | Saknas | |
| LoadReportFailed | Det gick inte att initiera – det gick inte att lösa klustret | 403 | |
| PowerBINotAuthorizedException | Rapporten kunde inte hämtas | 401 | |
| TokenExpired | Åtkomsttoken har upphört att gälla, skicka igen med en ny åtkomsttoken. Det gick inte att återge ett visuellt rapportvisuellt objekt med rubriken: visuell rubrik | Saknas | Frågedata Token har upphört att gälla |
| OpenConnectionError | Det går inte att visa det visuella objektet. Det gick inte att återge ett visuellt rapportvisuellt objekt med rubriken: visuell rubrik | Saknas | Kapacitet som pausats eller tagits bort medan en rapport som rör kapaciteten var öppen i en session |
| ExplorationContainer_FailedToLoadModel_DefaultDetails | Det gick inte att läsa in modellschemat som är associerat med den här rapporten. Kontrollera att du har en anslutning till servern och försök igen. | Saknas |
Vanliga fel när du bäddar in för icke-Power BI-användare (med en inbäddningstoken)
| Meddelande | Detaljerat meddelande | Felkod | Orsaker |
|---|---|---|---|
| TokenExpired | Åtkomsttoken har upphört att gälla, skicka igen med en ny åtkomsttoken | 403 | Token har upphört att gälla |
| LoadReportFailed | Rapporten kunde inte hämtas | 404 | |
| LoadReportFailed | Rapporten kunde inte hämtas | 403 | Rapport-ID matchar inte token |
| LoadReportFailed | Rapporten kunde inte hämtas | 500 | Angivet rapport-ID är inte ett guid |
| Ogiltiga parametrar | powerbiToken-parameter har inte angetts | Saknas | |
| LoadReportFailed | Det gick inte att initiera – det gick inte att lösa klustret | 403 | Fel tokentyp, ogiltig token |
| PowerBINotAuthorizedException | Rapporten kunde inte hämtas | 401 | Fel/obehörigt grupp-ID |
| TokenExpired | Åtkomsttoken har upphört att gälla, skicka igen med en ny åtkomsttoken. Det gick inte att återge ett visuellt rapportvisuellt objekt med rubriken: visuell rubrik | Saknas | Frågedata Token har upphört att gälla |
| OpenConnectionError | Det går inte att visa det visuella objektet. Det gick inte att återge ett visuellt rapportvisuellt objekt med rubriken: visuell rubrik | Saknas | Kapacitet som pausats eller tagits bort medan en rapport som rör kapaciteten var öppen i en session |
| ExplorationContainer_FailedToLoadModel_DefaultDetails | Det gick inte att läsa in modellschemat som är associerat med den här rapporten. Kontrollera att du har en anslutning till servern och försök igen. | Saknas |
Datauppsättningar
Hantera vilken del av data som användarna kan se
Alla användare med läsbehörighet för en datauppsättning kan se hela schemat (tabeller, kolumner och mått) och alla data. Du kan inte separat styra visningsbehörigheter för rådata och aggregerade data i samma datauppsättning.
Använd någon av följande metoder för att hantera vilken del av data som användarna kan visa:
Filtrering på radnivå med Power BI säkerhet på radnivå (RLS).
Separera data i olika datamängder. Du kan till exempel skapa en datauppsättning som bara innehåller aggregerade data och endast ge användarna åtkomst till den datauppsättningen.
Innehållsåtergivning
Läs det här avsnittet för att lösa renderingsproblem Power BI inbäddade objekt (till exempel rapporter och instrumentpaneler).
Kontrollera att Power BI läses in Power BI tjänsten
Om du vill utesluta problem med ditt program eller inbäddnings-API:er kontrollerar du att objektet kan visas i Power BI-tjänsten (powerbi.com).
Kontrollera att Power BI läses in i den inbäddade Power BI inbäddad analysplan
Om du vill utesluta problem med ditt program kontrollerar du att Power BI objekt kan visas i den Power BI för inbäddad analys.
Kontrollera att din åtkomsttoken inte har upphört att gälla
Av säkerhetsskäl har åtkomsttoken (en Azure AD-token eller en inbäddningstoken) en begränsad livslängd. Du bör ständigt övervaka din åtkomsttoken och uppdatera den om det behövs. Mer information finns i Uppdatera åtkomsttoken.
Prestanda
För att få bästa prestanda för inbäddat innehåll rekommenderar vi att du följer Power BI bästa praxis för inbäddad analys.
Konfigurationsverktyg för inbäddning
Med konfigurationsverktyget för inbäddning kan du snabbt ladda ned ett exempelprogram. Sedan kan du jämföra ditt program med exemplet.
Förutsättningar
Kontrollera att du uppfyller förhandskraven innan du använder konfigurationsverktyget för inbäddning. Du behöver ett Power BI Pro-konto och en Microsoft Azure-prenumeration.
- Om du inte har registrerat dig för Power BI Pro, registrerar du dig för en kostnadsfri utvärderingsversion innan du börjar.
- Om du inte har någon Azure-prenumeration kan du skapa ett kostnadsfritt konto innan du börjar.
- Du måste ha en egen installation för Azure Active Directory-klient.
- Du behöver Visual Studio installerad (version 2013 eller senare).
Vanliga problem
Här följer exempel på några vanliga problem som kan uppstå vid testning med konfigurationsverktyget för inbäddning:
Använda exempelprogrammet Embed for your customers (Bädda in för dina kunder)
Om du arbetar med upplevelsen Embed for your customers (Bädda in för dina kunder) börjar du med att spara och packa upp filen PowerBI-Developer-Samples.zip. Öppna sedan mappen PowerBI-Developer-Samples-master\App Owns Data och kör filen PowerBIEmbedded_AppOwnsData.sln.
När du väljer Bevilja behörigheter (steget Bevilja behörigheter) visas följande fel:
AADSTS70001: Application with identifier <client ID> wasn't found in the directory <directory ID>
Du kommer runt det här problemet genom att stänga popup-fönstret, vänta några sekunder och sedan försöka igen. Du kan behöva upprepa den här åtgärden några gånger. En tidsförskjutning gör att programregistreringen inte kan slutföras förrän den är tillgänglig för externa API:er.
Följande felmeddelande visas när du kör exempelappen:
Password is empty. Please fill password of Power BI username in web.config.
Det här felet uppstår eftersom det enda värdet som inte matas in i exempelprogrammet är användarlösenordet. Öppna filen Web.config i lösningen och fyll i fältet pbiPassword med användarens lösenord.
Om du får felet – AADSTS50079: The user is required to use multi-factor authentication (Användaren måste använda multifaktorautentisering).
Måste använda ett AAD-konto som inte har MFA aktiverat.
Använda Bädda in för organisationens exempelprogram
Om du arbetar med upplevelsen Embed for your organization (Bädda in för din organisation) börjar du med att spara och packa upp filen PowerBI-Developer-Samples.zip. Öppna sedan mappen PowerBI-Developer-Samples-master\User Owns Data\integrate-report-web-app och kör filen pbi-saas-embed-report.sln.
När du kör exempelappen Embed for your organization (Bädda in för din organisation) visas följande fel:
AADSTS50011: The reply URL specified in the request doesn't match the reply URLs configured for the application: <client ID>
Felet beror på att omdirigerings-URL:en som angetts för webbserverprogrammet skiljer sig från exemplets URL. Om du vill registrera exempelprogrammet använder du https://localhost:13526/ som omdirigerings-URL.
Om du vill redigera det registrerade programmet läser du avsnittet om hur du uppdaterar ett Azure AD-registrerat program, så att programmet kan ge åtkomst till webb-API:erna.
Om du vill redigera din Power BI-användarprofil eller dina Power BI-data läser du avsnittet om hur du redigerar Power BI-data.
Om du får felet – AADSTS50079: The user is required to use multi-factor authentication (Användaren måste använda multifaktorautentisering).
Måste använda ett AAD-konto som inte har MFA aktiverat.
Mer information finns i Vanliga frågor om Power BI Embedded.
Har du fler frågor? Prova Power BI Community
Om du behöver ytterligare hjälp kan du kontakta supporten eller skapa en supportbegäran via Azure-portalen och ange de felmeddelanden du får.
Nästa steg
Mer information finns i Vanliga frågor och svar.
Har du fler frågor? Prova Power BI Community