Feilsøke det innebygde programmet
Denne artikkelen tar for seg noen vanlige problemer som kan oppstå når du bygger inn innhold fra Power BI.
Feilsøkingsverktøy
Fiddler Trace
Fiddler er et gratis verktøy fra Telerik som overvåker HTTP-trafikk. Du kan se trafikken med Power BI-API fra klientmaskinen. Dette verktøyet kan vise feil og annen relatert informasjon.
F12 i nettleseren for feilsøking av frontend
F12-nøkkelen starter utviklervinduet i nettleseren. Dette verktøyet lar deg se på nettverkstrafikk og se annen verdifull informasjon.
Trekke ut feildetaljer fra Power BI-svar
Denne kodesnutten viser hvordan du trekker ut feildetaljene fra et HTTP-unntak:
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 anbefaler at du logger forespørsels-ID-en (og feildetaljer for feilsøking). Oppgi forespørsels-ID-en når du nærmer deg Microsoft-støtte.
Appregistrering
Appregistreringsfeil
Feilmeldinger i Azure-portalen eller registreringssiden for Power BI-appen varsler deg hvis du ikke har tilstrekkelige rettigheter til å registrere appen. Hvis du vil registrere et program, må du være administrator i Microsoft Entra-leieren, eller programregistreringer må være aktivert for brukere som ikke er administratorer.
Power Bi-tjeneste vises ikke i Azure-portalen når du registrerer en ny app
Minst én bruker må være registrert for Power BI. Hvis du ikke ser Power Bi-tjeneste oppført i API-listen, er ingen bruker registrert for Power BI.
Hva er forskjellen mellom en programobjekt-ID og en hovedobjekt-ID?
Når du registrerer en Microsoft Entra-app, finnes det to parametere som kalles objekt-ID. Denne delen forklarer formålet med hver parameter, og hvordan du får tak i den.
Programobjekt-ID
Programobjekt-ID-en, også kjent som objekt-IDen, er den unike ID-en til Microsoft Entra-programobjektet.
Hvis du vil ha programobjekt-ID-en, går du til Microsoft Entra-appen og kopierer den fra oversikten.
ID for hovedobjekt
Hovedobjekt-ID-en, også kjent som objekt-IDen, er den unike ID-en til tjenestekontohaverobjektet som er knyttet til Microsoft Entra-programmet.
Hvis du vil ha hovedobjekt-ID-en din, går du til Microsoft Entra-appen og velger appkoblingen i administrert program i lokal katalog fra Oversikt.
Kopier objekt-ID-en fra Egenskaper-delen.
Autentisering
Godkjenning mislyktes med AADSTS70002 eller AADSTS50053
(AADSTS70002: Feil under validering av legitimasjon. AADSTS50053: Du har prøvd å logge på for mange ganger med feil bruker-ID eller passord)
Hvis du bruker direktegodkjenning for Power BI Embedded og Microsoft Entra, kan det hende du mottar en melding som den forrige meldingen når du prøver å logge på, fordi direkte godkjenning ikke er aktivert.
Du kan aktivere direkte godkjenning på nytt ved hjelp av en Microsoft Entra-policy som er begrenset til organisasjonen, eller en tjenestekontohaver.
Vi anbefaler at du aktiverer denne policyen bare per app.
Hvis du vil opprette denne policyen, må du være global administrator for katalogen der du oppretter policyen og tilordner den. Her er et eksempelskript for å opprette policyen og tilordne den til SP for dette programmet:
Kjør følgende PowerShell-kommandoer linje for linje (kontroller at variabelen
$sp
ikke har mer enn ett program som et resultat).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
Når policyen er tilordnet, venter du omtrent 15–20 sekunder på overføring før testing.
Generering av token mislykkes når du yter effektiv identitet
GenerateToken
kan mislykkes med effektiv identitet angitt av flere ulike årsaker:
- Den semantiske modellen støtter ikke effektiv identitet.
- Brukernavn ble ikke angitt.
- Rollen ble ikke angitt.
DatasetId
ble ikke angitt.- Brukeren har ikke de riktige tillatelsene.
Prøv følgende fremgangsmåte for å finne ut problemet:
- Kjør hent datasett. Er egenskapen
IsEffectiveIdentityRequired
sann? - Brukernavn kreves for alle
EffectiveIdentity
. - Hvis
IsEffectiveIdentityRolesRequired
det er sant, kreves rolle. DatasetId
kreves for alleEffectiveIdentity
.- For Analysis Services må hovedbrukeren være gatewayadministrator.
AADSTS90094: Tildelingen krever administratortillatelse
Symptomer:
Når en bruker som ikke er administrator, prøver å logge på et program for første gang mens han gir samtykke, får en av følgende feil:
-
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.
En administratorbruker kan logge på og gi samtykke.
Rotårsak:
Brukersamtykke er deaktivert for leieren.
Flere løsninger er mulig:
- Aktiver brukersamtykke for hele leieren (alle brukere, alle programmer):
- Gå til Microsoft Entra ID-brukere>og grupper>brukerinnstillinger i Azure-portalen.
- Aktiver brukere kan samtykke til at apper får tilgang til firmadata på deres vegne og lagrer endringene.
- En administrator kan gi tillatelser til programmet – enten for hele leieren eller en bestemt bruker.
CS1061-feil
Last ned Microsoft.IdentityModel.Clients.ActiveDirectory hvis du opplever følgende feil:
'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 for en annen leier (gjestebruker)
Når du bygger inn for organisasjonen, må du angi leier-ID-en i parameteren authorityUri
for å gi Microsoft Entra gjestebrukere tilgang til innholdet.
NETTADRESSE for godkjenning i organisasjonens leier:
https://login.microsoftonline.com/common/v2.0
NETTADRESSE for godkjenning av en gjest Microsoft Entra-bruker:
https://login.microsoftonline.com/<tenant ID>
Hvis du vil finne leier-ID-en, kan du bruke instruksjonene i Finn leier-ID-en for Microsoft Entra og det primære domenenavnet.
Hvis du vil ha mer informasjon, kan du se Gjøre programmet til multileieren.
Datakilder
ISV ønsker å ha annen legitimasjon for samme datakilde
En datakilde kan ha ett enkelt sett med legitimasjon for én hovedbruker. Hvis du trenger å bruke annen legitimasjon, kan du opprette flere hovedbrukere. Deretter tilordner du de ulike legitimasjonene til hver av hovedbrukernes kontekster, og bygger inn ved hjelp av Microsoft Entra-tokenet til denne brukeren.
Feilsøke det innebygde programmet med IError-objektet
Bruk IError-objektet som returneres av feilhendelsen fra JavaScript SDK til å feilsøke programmet og bedre forstå årsaken til feilene dine.
Når du har anskaffet IError-objektet, bør du se på den aktuelle vanlige feiltabellen som passer til innebyggingstypen du bruker. Sammenlign IError-egenskapene med de i tabellen, og finn den mulige årsaken(e) til feilen.
Vanlige feil ved innebygging for Power BI-brukere
Melding | Detaljert melding | Feilkode | Mulige årsaker |
---|---|---|---|
TokenExpired | Tilgangstokenet er utløpt, send inn på nytt med et nytt tilgangstoken | 403 | Utløpt token |
PowerBIEntityNotFound | Hent rapport mislyktes | 404 | |
Ugyldige parametere | powerbiToken-parameter er ikke angitt | Ikke tilgjengelig | |
LoadReportFailed | Kan ikke initialisere - Kan ikke løse klynge | 403 | |
PowerBINotAuthorizedException | Hent rapport mislyktes | 401 | |
TokenExpired | Tilgangstokenet er utløpt, og send inn på nytt med et nytt tilgangstoken. Kan ikke gjengi et visualobjekt i en rapport med tittelen: tittel på visualobjekt | Ikke tilgjengelig | |
Åpne Koble til ionError | Kan ikke vise visualobjektet. Kan ikke gjengi et visualobjekt i en rapport med tittelen: tittel på visualobjekt | Ikke tilgjengelig | Kapasiteten ble midlertidig stanset eller slettet mens en rapport relatert til kapasiteten var åpen i en økt |
ExplorationContainer_FailedToLoadModel_DefaultDetails | Kan ikke laste inn modellskjemaet som er knyttet til denne rapporten. Kontroller at du har en tilkobling til serveren, og prøv på nytt. | Ikke tilgjengelig |
Vanlige feil ved innebygging for ikke-Power BI-brukere (ved hjelp av et innebyggingstoken)
Melding | Detaljert melding | Feilkode | Årsak(er) |
---|---|---|---|
TokenExpired | Tilgangstokenet er utløpt, send inn på nytt med et nytt tilgangstoken | 403 | Utløpt token |
LoadReportFailed | Hent rapport mislyktes | 404 | |
LoadReportFailed | Hent rapport mislyktes | 403 | Rapport-ID samsvarer ikke med tokenet |
LoadReportFailed | Hent rapport mislyktes | 500 | Angitt ID for rapport er ikke en GUID |
Ugyldige parametere | powerbiToken-parameter er ikke angitt | Ikke tilgjengelig | |
LoadReportFailed | Kan ikke initialisere - Kan ikke løse klynge | 403 | Feil tokentype eller ugyldig token |
PowerBINotAuthorizedException | Hent rapport mislyktes | 401 | Feil/uautorisert gruppe-ID |
TokenExpired | Tilgangstokenet er utløpt, og send inn på nytt med et nytt tilgangstoken. Kan ikke gjengi et visualobjekt i en rapport med tittelen: tittel på visualobjekt | Ikke tilgjengelig | |
Åpne Koble til ionError | Kan ikke vise visualobjektet. Kan ikke gjengi et visualobjekt i en rapport med tittelen: tittel på visualobjekt | Ikke tilgjengelig | Kapasiteten ble midlertidig stanset eller slettet mens en rapport relatert til kapasiteten var åpen i en økt |
ExplorationContainer_FailedToLoadModel_DefaultDetails | Kan ikke laste inn modellskjemaet som er knyttet til denne rapporten. Kontroller at du har en tilkobling til serveren, og prøv på nytt. | Ikke tilgjengelig |
Få rapporten mislykkes – feil 401 – løs seg selv
I brukeren eier datascenarioet får brukere noen ganger en 401-feil som løser seg selv etter at de har tilgang til Power BI-portalen. Når 401-feilen oppstår, kan du legge til RefreshUser Permissions-kallet i appen som forklart i Oppdater brukertillatelser.
Semantiske modeller
Administrere hvilken del av dataene brukerne kan se
Alle brukere med lesetillatelser for en semantisk modell kan se hele skjemaet (tabeller, kolonner og mål) og alle dataene. Du kan ikke kontrollere visningstillatelser til rå og aggregerte data separat i samme semantiske modell.
Hvis du vil administrere hvilken del av dataene brukerne kan vise, kan du bruke én av følgende metoder:
Filtrering på radnivå ved hjelp av sikkerhet på radnivå i Power BI (RLS).
Skill dataene i forskjellige semantiske modeller. Du kan for eksempel opprette en semantisk modell som bare inneholder aggregerte data og gi brukerne tilgang til bare den semantiske modellen.
Innholdsgjengivelse
Hvis du vil løse gjengivelsesproblemer i innebygde Power BI-elementer (for eksempel rapporter og instrumentbord), kan du se gjennom denne delen.
Kontroller at Power BI-elementet lastes inn i Power Bi-tjeneste
Hvis du vil utelukke problemer med programmet eller API-ene for innebygging, må du kontrollere at elementet kan vises i Power Bi-tjeneste (powerbi.com).
Kontroller at Power BI-elementet lastes inn i lekeplassen for innebygd analyse med Power BI
Hvis du vil utelukke problemer med programmet, må du kontrollere at Power BI-elementet kan vises på lekeplassen for innebygd analyse med Power BI.
Kontroller at tilgangstokenet ikke utløp
For sikkerhetsformål har tilgangstokener (et Microsoft Entra-token eller et innebyggingstoken) en begrenset levetid. Du bør hele tiden overvåke tilgangstokenet og oppdatere det om nødvendig. Hvis du vil ha mer informasjon, kan du se Oppdatere tilgangstokenet.
Ytelse
Hvis du vil ha best mulig innebygd innhold, anbefaler vi at du følger anbefalte fremgangsmåter for innebygd analyse med Power BI.
Bygg inn konfigurasjonsverktøy
Du kan gå gjennom installasjonsverktøyet for innebygging for raskt å laste ned et eksempelprogram. Deretter kan du sammenligne programmet med eksemplet.
Forutsetning
Kontroller at du har alle de riktige forutsetningene før du bruker installasjonsverktøyet for innebygging. Du trenger en Power BI Pro-konto og et Microsoft Azure-abonnement .
- Hvis du ikke er registrert for Power BI Pro, kan du registrere deg for en gratis prøveversjon før du begynner.
- Hvis du ikke har et Azure-abonnement, oppretter du en gratis konto før du begynner.
- Du må ha ditt eget leieroppsett for Microsoft Entra .
- Du må ha Visual Studio installert (versjon 2013 eller nyere).
Vanlige problemer
Noen vanlige problemer som kan oppstå under testing med installasjonsverktøyet for innebygging, er:
Bruke eksempelprogrammet Bygg inn for kundene
Hvis du arbeider med Bygg inn for kundene-opplevelsen , kan du lagre og pakke ut PowerBI-Developer-Samples.zip filen. Deretter åpner du mappen PowerBI-Developer-Samples-master\App Owns Data og kjører filen PowerBIEmbedded_AppOwnsData.sln .
- Når du velger Gi tillatelser (trinnet Gi tillatelser), får du følgende feil:
AADSTS70001: Application with identifier <client ID> wasn't found in the directory <directory ID>
Løsningen er å lukke popup-vinduet, vente noen sekunder og prøve på nytt. Du må kanskje gjenta denne handlingen et par ganger. Et tidsintervall forårsaker problemet fra å fullføre registreringsprosessen for programmet til når det er tilgjengelig for eksterne API-er.
- Følgende feilmelding vises når du kjører eksempelappen:
Password is empty. Please fill password of Power BI username in web.config.
Denne feilen oppstår fordi den eneste verdien som ikke settes inn i eksempelprogrammet, er brukerpassordet. Åpne Web.config-filen i løsningen, og fyll pbiPassword
feltet med brukerens passord.
- Hvis du får feilen:
AADSTS50079: The user is required to use multi-factor authentication.
Du må bruke en Microsoft Entra-konto som ikke har MFA aktivert.
Bruke eksempelprogrammet Bygg inn for organisasjonen
Hvis du arbeider med Bygg inn for organisasjonen , kan du lagre og pakke ut den PowerBI-Developer-Samples.zip filen. Deretter åpner du mappen PowerBI-Developer-Samples-master\User Owns Data\integrate-report-web-app og kjører pbi-saas-embed-report.sln-filen .
- Når du kjører eksempelappen Bygg inn for organisasjonen , får du følgende feil:
AADSTS50011: The reply URL specified in the request doesn't match the reply URLs configured for the application: <client ID>
Denne feilen er fordi url-adressen for omadressering som er angitt for webserverprogrammet, er forskjellig fra nettadressen for eksemplet. Hvis du vil registrere eksempelprogrammet, kan du bruke https://localhost:13526/
som url-adresse for omadressering.
Hvis du vil redigere det registrerte programmet, kan du oppdatere det registrerte Programmet for Microsoft Entra, slik at programmet kan gi tilgang til nett-API-er.
Hvis du vil redigere Power BI-brukerprofilen eller -dataene, kan du lære hvordan du redigerer Power BI-dataene.
- Hvis du får feilen:
AADSTS50079: The user is required to use multi-factor authentication.
Du må bruke en Microsoft Entra-konto som ikke har MFA aktivert.
Hvis du vil ha mer informasjon, kan du se Vanlige spørsmål om Power BI Embedded.
Hvis du vil ha mer hjelp, kan du kontakte kundestøtte eller opprette en støtteforespørsel via Azure-portalen og gi feilmeldingene du støter på.
Relatert innhold
Vanlige spørsmål om Power BI Embedded
Har du flere spørsmål? Spør Power BI-fellesskap