Jaa


Upotetun sovelluksen vianmääritys

Tässä artikkelissa käsitellään joitain yleisiä ongelmia, joita voi ilmetä upotettaessa sisältöä Power BI:stä.

Vianmääritystyökalut

Jäljitys Fiddlerillä

Fiddler on Telerikin kehittämä maksuton työkalu, joka valvoo HTTP-liikennettä. Voit tarkastella Power BI -ohjelmointirajapintojen tiedonkulkua asiakaskoneelta. Tämä työkalu saattaa näyttää virheitä ja muita olennaisia tietoja.

Näyttökuva Fiddler-työkalun tulosteikkunasta, jossa näkyy Power BI -ohjelmointirajapinnan HTTP-liikenne.

F12 selainpuolen virheenkorjausta varten

F12-avain käynnistää kehittäjä-ikkunan selaimessasi. Tämän työkalun avulla voit tarkastella verkkoliikennettä ja nähdä muita arvokkaita tietoja.

Näyttökuva verkkoselaimen kehittäjäikkunan Verkko-välilehdestä, joka näyttää verkkoliikenteen.

Virhetietojen poimiminen Power BI:n vastauksesta

Tämä koodikatkelma näyttää, miten voit poimia virhetiedot HTTP-poikkeuksesta:

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;
}

On suositeltavaa kirjata pyyntötunnus (sekä virhetiedot vianmääritystä varten). Anna pyyntötunnus, kun otat yhteyttä Microsoft-tukeen.

Sovellusrekisteröinti

Sovelluksen rekisteröinnin virhe

Azure-portaali tai Power BI -sovelluksen rekisteröintisivulla olevat virhesanomat ilmoittavat, jos sinulla ei ole riittäviä oikeuksia sovelluksen rekisteröintiin. Voidaksesi rekisteröidä sovelluksen sinun on oltava Microsoft Entra -vuokraajan järjestelmänvalvoja tai sovellusten rekisteröiminen pitää sallia erikseen myös muille kuin järjestelmänvalvojille.

Power BI -palvelu ei näy Azure-portaali uutta sovellusta rekisteröitäessä

Vähintään yhden käyttäjän on oltava rekisteröitynyt Power BI:hin. Jos et näe Power BI -palvelu ohjelmointirajapintaluettelossa, kukaan käyttäjistä ei ole rekisteröitynyt Power BI:hin.

Mitä eroa on sovelluksen objektitunnuksella ja pääobjektitunnuksella?

Kun rekisteröit Microsoft Entra -sovelluksen, siinä on kaksi parametria, joita kutsutaan objektitunnuksi. Tässä osiossa kerrotaan kunkin parametrin tarkoitus ja sen hankkiminen.

Sovelluksen objektitunnus

Sovelluksen objektitunnus, jota kutsutaan myös objektitunnukseksi, on Microsoft Entra -sovellusobjektisi yksilöivä tunnus.

Jos haluat saada sovelluksen objektitunnuksen, siirry Microsoft Entra -sovellukseen ja kopioi se Yleiskatsaus-kohdasta.

Azure-portaali-ikkunan näyttökuva, jossa objektitunnus näkyy Microsoft Entra -sovelluksen Yleiskatsaus-ruudussa.

Principal object ID

Objektitunnus, jota kutsutaan myös objektitunnukseksi, on Microsoft Entra -sovellukseen liittyvän palvelun pääobjektin yksilöivä tunnus.

Voit hakea ensisijaisen objektitunnuksen siirtymällä Microsoft Entra -sovellukseen ja valitsemalla Yleiskatsaus-kohdasta sovelluslinkin kohdassa Hallittu sovellus paikallisessa hakemistossa.

Näyttökuva Azure-portaali-ikkunasta, jossa hallittu sovellus paikallisessa hakemistossa näkyy Microsoft Entra -sovelluksen Yleiskatsaus-ruudussa.

Kopioi Ominaisuudet-osiosta objektitunnus.

Näyttökuva Azure-portaali-ikkunasta, jossa principal-objektitunnus näkyy Ominaisuudet-osiossa Microsoft Entra -sovelluksen Yleiskatsaus-ruudussa.

Todentaminen

todentaminen epäonnistui AADSTS70002 tai AADSTS50053 kanssa

(AADSTS70002: Virhe vahvistettaessa tunnistetietoja. AADSTS50053: Olet yrittänyt kirjautua sisään liian monta kertaa virheelliellä käyttäjätunnuksella tai salasanalla)

Jos käytät Power BI Embeddedin ja Microsoft Entran suoraa todennusta, saatat saada edellisen viestin kaltaisen viestin, kun yrität kirjautua sisään, koska suora todennus ei ole käytössä.

Voit ottaa suoran todennuksen takaisin käyttöön käyttämällä Microsoft Entra -käytäntöä, joka on rajoitettu organisaatioon, tai palvelun päänimeä.

Suosittelemme, että otat tämän käytännön käyttöön vain sovelluskohtaisesti.

Jotta voit luoda tämän käytännön, sinun on oltava sen hakemiston yleinen Hallinta määrite, johon luot ja määrität käytännön. Tässä on mallikomentosarja käytännön luomiseksi ja sen määrittämiseksi tämän sovelluksen SP:lle:

  1. Asenna Microsoft Graph PowerShell SDK.

  2. Suorita seuraavat PowerShell-komennot rivi riviltä (varmista, että muuttujan $sp tuloksena on vain yksi sovellus).

    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
    

Odota käytännön määrittämisen jälkeen noin 15–20 sekuntia välittämistä varten ennen testausta.

Tunnuksen muodostaminen epäonnistuu, kun käytössä oleva käyttäjätieto annetaan

GenerateToken voi epäonnistua, jos käyttäjätietoja on annettu muutamasta eri syystä:

  • Semanttinen malli ei tue voimassa olevia käyttäjätietoja.
  • Käyttäjänimeä ei ole annettu.
  • Roolia ei ole annettu.
  • DatasetId ei ole annettu.
  • Käyttäjällä ei ole tarvittavia oikeuksia.

Voit selvittää ongelman seuraavasti:

  • Suorita Hae tietojoukko. Onko ominaisuus IsEffectiveIdentityRequired tosi?
  • Käyttäjänimi vaaditaan jokaiselle EffectiveIdentitylle.
  • Jos IsEffectiveIdentityRolesRequired arvo on tosi, rooli vaaditaan.
  • DatasetId -arvo vaaditaan jokaiselle .-lle EffectiveIdentity.
  • Pääkäyttäjän on oltava yhdyskäytävän järjestelmänvalvoja, jotta hän voi käyttää Analysis Servicesiä.

AADSTS90094: Myöntäminen edellyttää järjestelmänvalvojan käyttöoikeutta

Oireita:

Kun muu kuin järjestelmänvalvojana toimiva käyttäjä yrittää ensimmäistä kertaa kirjautua sisään sovellukseen luvan myöntämiseksi, näkyviin tulee jokin seuraavista virheistä:

  •   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.
    

    Näyttökuva ikkunan Azure-portaali kirjautumisvalintaikkunasta, jossa näkyy Suostumustesti-käyttöoikeusvirhe.

Järjestelmänvalvojana oleva käyttäjä voi kirjautua sisään ja myöntää luvan.

Syy:

Käyttäjän suostumus on poistettu käytöstä vuokraajalle.

Ongelma voidaan korjata usealla eri korjauksella:

  • Ota käyttäjän lupa käyttöön koko vuokraajalle (kaikki käyttäjät, kaikki sovellukset):
  1. Siirry Azure-portaali kohtaan Microsoft Entra ID>-käyttäjät ja ryhmät>Käyttäjäasetukset.
  2. Anna Käyttäjille mahdollisuus antaa sovellukselle suostumus käyttää yrityksen tietoja puolestaan -asetus ja tallentaa muutokset.

Näyttökuva Azure-portaalista.

  • Järjestelmänvalvoja voi myöntää käyttöoikeudet sovellukseen joko koko vuokraajalle tai tietylle käyttäjälle.

CS1061-virhe

Lataa Microsoft.IdentityModel.Clients.ActiveDirectory , jos saat seuraavan virheilmoituksen:

'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 -tunnus toiselle vuokraajalle (vieraskäyttäjälle)

Kun upotat organisaatiolle, jotta Microsoft Entra -vieraskäyttäjät voivat käyttää sisältöäsi, sinun on määritettävä vuokraajatunnus parametrissa authorityUri .

  • URL-osoite organisaatiosi vuokraajan todentamiseen:

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

  • URL-osoite Microsoft Entra -vieraan käyttäjän todentamiseen:

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

Voit etsiä vuokraajatunnuksesi noudattamalla ohjeita kohdassa Etsi Microsoft Entra -vuokraajatunnus ja ensisijainen toimialuenimi.

Lisätietoja on kohdassa Sovelluksen määrittäminen usealle vuokraajalle.

Tietolähteet

ISV haluaa eri tunnistetiedot samalle tietolähteelle

Tietolähteellä voi olla vain yksi tunnistetietojoukko yhtä pääkäyttäjää varten. Jos sinun on käytettävä eri tunnistetietoja, luo enemmän pääkäyttäjiä. Määritä sitten eri tunnistetiedot kunkin pääkäyttäjän konteksteihin ja upota ne käyttämällä käyttäjän Microsoft Entra -tunnusta.

Upotetun sovelluksen vianmääritys IError-objektin avulla

Korjaa sovelluksen virheet ja selvitä virheiden syy käyttämällä IError-objektia, jonka virhetapahtuma palautti JavaScript SDK:sta.

IError-objektin hankkimisen jälkeen sinun tulee tarkastella asianmukaista yleisten virheiden taulukkoa, joka sopii käyttämääsi upotustyyppiin. Vertaa IError-ominaisuuksia taulukossa oleviin ja etsi mahdolliset syyt virheisiin.

Tavalliset virheet käytettäessä upottamista Power BI -käyttäjien käyttöön

Viesti Yksityiskohtainen viesti Virhekoodi Mahdolliset syyt
Tunnus On vanhentunut Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella 403 Vanhentunut tunnus
PowerBIEntityNotFound Raportin hakeminen epäonnistui 404
  • Väärä raporttitunnus
  • Raporttia ei ole olemassa
  • Virheelliset parametrit powerbiToken-parametria ei määritetty
  • Käyttöoikeustietuetta ei ole annettu
  • Raporttitunnusta ei ole annettu
  • LoadReportFailed Alustaminen epäonnistui – klusteria ei voitu selvittää 403
  • Virheellinen käyttöoikeustietue
  • Upotustyyppi ei vastaa tunnustyyppiä
  • PowerBINotAuthorizedException Raportin hakeminen epäonnistui 401
  • Väärä ryhmän tunnus
  • Valtuuttamaton ryhmä
  • Tunnus On vanhentunut Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella. Visualisoinnin otsikkoa ei voitu hahmontaa: visualisoinnin otsikko
  • Tietojen kyseleminen
  • Vanhentunut tunnus
  • Open Näyttöyhteys ionError Visualisointia ei voi näyttää. Visualisoinnin otsikkoa ei voitu hahmontaa: visualisoinnin otsikko Kapasiteetti on keskeytetty tai poistettu, kun kapasiteettiin liittyvä raportti oli avoimena istunnossa
    ExplorationContainer_FailedToLoadModel_DefaultDetails Tähän raporttiin liittyvää mallirakennetta ei voitu ladata. Varmista, että palvelimeen on yhteys, ja yritä uudelleen.
  • Kapasiteetti keskeytetty
  • Kapasiteetti poistettu
  • Tavalliset virheet käytettäessä upottamista Power BI -käyttäjien käyttöön (upotustunnuksen avulla)

    Viesti Yksityiskohtainen viesti Virhekoodi Syistä
    Tunnus On vanhentunut Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella 403 Vanhentunut tunnus
    LoadReportFailed Raportin hakeminen epäonnistui 404
  • Väärä raporttitunnus
  • Raporttia ei ole olemassa
  • LoadReportFailed Raportin hakeminen epäonnistui 403 Raporttitunnus ei vastaa tunnusta
    LoadReportFailed Raportin hakeminen epäonnistui 500 Annettu raporttitunnus ei ole GUID-tunnus
    Virheelliset parametrit powerbiToken-parametria ei määritetty
  • Käyttöoikeustietuetta ei ole annettu
  • Raporttitunnusta ei ole annettu
  • LoadReportFailed Alustaminen epäonnistui – klusteria ei voitu selvittää 403 Väärä tunnustyyppi tai virheellinen tunnus
    PowerBINotAuthorizedException Raportin hakeminen epäonnistui 401 Väärä/valtuuttamaton ryhmän tunnus
    Tunnus On vanhentunut Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella. Visualisoinnin otsikkoa ei voitu hahmontaa: visualisoinnin otsikko
  • Tietojen kyseleminen
  • Vanhentunut tunnus
  • Open Näyttöyhteys ionError Visualisointia ei voi näyttää. Visualisoinnin otsikkoa ei voitu hahmontaa: visualisoinnin otsikko Kapasiteetti on keskeytetty tai poistettu, kun kapasiteettiin liittyvä raportti oli avoimena istunnossa
    ExplorationContainer_FailedToLoadModel_DefaultDetails Tähän raporttiin liittyvää mallirakennetta ei voitu ladata. Varmista, että palvelimeen on yhteys, ja yritä uudelleen.
  • Kapasiteetti keskeytetty
  • Kapasiteetti poistettu
  • Hae raportti epäonnistuu – virhe 401 – korjaa se itse

    Käyttäjä omistaa tiedot -skenaariossa käyttäjät saavat joskus 401-virheen, joka korjaa itsensä Power BI -portaalin käytön jälkeen. Kun 401-virhe ilmenee, lisää RefreshUser Permissions -kutsu sovellukseen artikkelissa Käyttäjien käyttöoikeuksien päivittäminen selitettynä.

    Semanttiset mallit

    Käyttäjien näkemän tieto-osan hallinta

    Kuka tahansa käyttäjä, jolla on semanttisen mallin lukuoikeudet, voi nähdä koko rakenteen (taulukot, sarakkeet ja mittarit) ja kaikki tiedot. Et voi hallita raaka- ja koostetietojen tarkasteluoikeuksia erikseen samassa semanttisessa mallissa.

    Voit hallita sitä, mitä tietojen osaa käyttäjät voivat tarkastella, käyttämällä jotakin seuraavista menetelmistä:

    • Rivitason suodatus Power BI :n rivitason suojauksen (RLS) avulla.

    • Objektitason suojaus.

    • Erota tiedot eri semanttisiin malleihin. Voit esimerkiksi luoda semanttisen mallin, joka sisältää vain koostettuja tietoja, ja antaa käyttäjillesi käyttöoikeuden vain tähän semanttiseen malliin.

    Sisällön hahmontaminen

    Jos haluat ratkaista upotettujen Power BI -kohteiden (kuten raporttien ja koontinäyttöjen) hahmontamisongelmia, tutustu tähän osioon.

    Varmista, että Power BI -kohde latautuu Power BI -palvelu

    Jos haluat sulkea pois sovellukseesi tai upottamiseen liittyvät ohjelmointirajapinnat, varmista, että kohdetta voidaan tarkastella Power BI -palvelu (powerbi.com).

    Varmista, että Power BI -kohde latautuu Power BI Embedded -analytiikan leikkikentällä

    Voit sulkea sovellukseesi liittyvät ongelmat pois varmistamalla, että Power BI -kohdetta voidaan tarkastella Power BI Embedded -analytiikan leikkikentällä.

    Varmista, että käyttöoikeustietue ei ole vanhentunut

    Suojaussyistä käyttöoikeustietueiden (Microsoft Entra -tunnus tai upotustunnus) käyttöikä on rajoitettu. Sinun tulee seurata käyttöoikeustietuettasi jatkuvasti ja päivittää se tarvittaessa. Lisätietoja on kohdassa Käyttöoikeustietueen päivittäminen.

    Suorituskyky

    Suosittelemme, että noudatat upotetun Power BI -analytiikan parhaita käytäntöjä saadaksesi parhaan mahdollisen upotetun sisällön.

    Upottamisen määritystyökalu

    Voit käyttää upottamisen määritystyökalua ladataksesi mallisovelluksen nopeasti. Sen jälkeen voit verrata sovellustasi malliin.

    Edellytykset

    Varmista, että sinulla on kaikki asianmukaiset edellytykset ennen upottamisen määritystyökalun käyttöä. Tarvitset Power BI Pro -tilin ja Microsoft Azure -tilauksen.

    Yleisiä ongelmia

    Seuraavaksi joitakin yleisiä ongelmia, joita saattaa ilmetä upottamisen määritystyökalua testattaessa:

    Käyttämällä asiakkaille tarkoitettu upotus -mallisovellusta

    Jos käytät asiakkaille tarkoitettu upotustoimintoa, tallenna ja pura PowerBI-Developer-Samples.zip tiedosto. Avaa sitten PowerBI-Developer-Samples-master\App Owns Data -kansio ja suorita PowerBIEmbedded_AppOwnsData.sln-tiedosto .

    • Kun valitset Myönnä käyttöoikeuksia (Myönnä käyttöoikeuksia -vaihe), saat seuraavan virheilmoituksen:
    AADSTS70001: Application with identifier <client ID> wasn't found in the directory <directory ID>
    

    Ratkaisu on sulkea ponnahdusikkuna, odottaa hetki ja yrittää uudelleen. Saatat joutua toistamaan tämän muutaman kerran. Aikaväli aiheuttaa ongelman sovelluksen rekisteröintiprosessin loppuun suorittamisessa, kun se on saatavilla ulkoisille ohjelmointirajapinnoille.

    • Mallisovellusta suoritettaessa tulee näkyviin seuraava virhesanoma:
    Password is empty. Please fill password of Power BI username in web.config.
    

    Tämä virhe ilmenee, koska ainoa arvo, jota ei ole syötetty mallisovellukseen, on käyttäjän salasana. Avaa web.config-tiedosto ratkaisussa ja täytä pbiPassword kenttä käyttäjän salasanalla.

    • Jos näyttöön tulee virhe:
    AADSTS50079: The user is required to use multi-factor authentication.
    

    Sinun on käytettävä Microsoft Entra -tiliä, jossa ei käytetä monimenetelmäistä todentamista.

    Organisaatiolle tarkoitetun upotuksen mallisovelluksen käyttäminen

    Jos käytät organisaatiolle tarkoitettu upotustoimintoa, tallenna ja pura PowerBI-Developer-Samples.zip-tiedosto . Avaa sitten PowerBI-Developer-Samples-master\User Owns Data\integrate-report-web-app-kansio ja suorita pbi-saas-embed-report.sln-tiedosto .

    • Kun suoritat Organisaatiolle tarkoitettu upotus -mallisovelluksen, saat seuraavan virheilmoituksen:
    AADSTS50011: The reply URL specified in the request doesn't match the reply URLs configured for the application: <client ID>
    

    Tämä virhe johtuu siitä, että verkkopalvelinsovellukselle määritetty uudelleenohjauksen URL-osoite on eri kuin mallisovelluksen URL-osoite. Jos haluat rekisteröidä mallisovelluksen, käytä uudelleenohjauksen https://localhost:13526/ URL-osoitteena.

    Jos haluat muokata rekisteröityä sovellusta, päivitä Microsoft Entra -rekisteröity sovellus, jotta sovellus voi tarjota pääsyn verkon ohjelmointirajapintoihin.

    Jos haluat muokata Power BI -käyttäjäprofiilia tai tietoja, lue, miten voit muokata Power BI -tietojasi.

    • Jos näyttöön tulee virhe:
    AADSTS50079: The user is required to use multi-factor authentication.
    

    Sinun on käytettävä Microsoft Entra -tiliä, jossa ei käytetä monimenetelmäistä todentamista.

    Jos haluat lisätietoja, katso Power BI Embedded -usein kysytyt kysymykset.

    Jos tarvitset lisäapua, ota yhteyttä tukeen tai luo tukipalvelupyyntö Azure-portaali kautta ja anna kohtaamasi virhesanomat.

    Usein kysytyt kysymykset Power BI Embeddedistä

    Onko sinulla lisää kysymyksiä? Kysy Power BI -yhteisö