Upotetun sovelluksen vianmääritys

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

Vianmääritystyökalut

Jäljitys Fiddlerillä

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

Fiddler-jäljitys

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.

F12 selaimen virheenkorjaus

Virhetietojen poimiminen Power BI:n vastauksesta

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

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.

Sovelluksen rekisteröinti

Virhe sovelluksen rekisteröinnissä

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 Azure AD 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-portaalissa 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 -palvelua ohjelmointirajapintaluettelossa, kukaan käyttäjistä ei ole rekisteröitynyt Power BI:hin.

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

Kun rekisteröit Azure AD sovelluksen, käytettävissä 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 Azure AD -sovellusobjektisi yksilöivä tunnus.

Jos haluat saada sovelluksen objektitunnuksen, siirry Azure AD sovellukseesi ja kopioi se Yleiskatsaus-kohdasta.

Näyttökuva, joka näyttää objektitunnuksen Azure AD -sovelluksen Yleiskatsaus-ruudussa

Pääobjektitunnus

Pääobjektitunnus, jota kutsutaan myös objektitunnukseksi, on Azure AD sovellukseesi liitetyn palvelun päänimen objektin yksilöivä tunnus.

Jos haluat hankkia ensisijaisen objektitunnuksen, siirry Azure AD sovellukseen ja valitse Yleiskatsaus-kohdasta sovelluslinkki kohdassa Hallittu sovellus paikallisessa hakemistossa.

Näyttökuva, jossa näkyy hallittu sovellus paikallisessa hakemistossa Azure AD -sovelluksen Yleiskatsaus-ruudussa

Kopioi Ominaisuudet-osiostaobjektitunnus.

Näyttökuva, jossa on näkyvissä pääobjektitunnus Ominaisuudet-osiossa Azure A D -sovelluksen Yleiskatsaus-ruudussa

Todentaminen

Todentaminen epäonnistui AADSTS70002:n tai AADSTS50053:n kanssa

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

Jos käytät Power BI Embedded ja Azure AD Suoraa todennusta, saatat saada yllä olevan kaltaisen viestin, kun yrität kirjautua sisään, koska suora todennus ei ole enää käytössä.

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

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 järjestelmänvalvoja , johon luot ja määrität käytännön. Seuraavassa on esimerkki komentosarjasta käytännön luomiseksi ja sen määrittämiseksi tämän sovelluksen SP:lle:

  1. Asenna Azure AD Preview PowerShell -moduuli.

  2. Suorita seuraavat PowerShell-komennot rivi riviltä (varmista, että muuttujalle $sp saadaan tulokseksi vain yksi sovellus).

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 

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

Voimassa olevista käyttäjätiedoista huolimatta tunnussanoman luominen epäonnistuu

GenerateToken voi epäonnistua, kun käytössä olevat käyttäjätiedot on annettu, muutamasta eri syystä.

  • Tietojoukko ei tue voimassa olevia käyttäjätietoja
  • Käyttäjänimeä ei ole annettu
  • Roolia ei ole annettu
  • Tietojoukon tunnusta ei ole annettu
  • Käyttäjällä ei ole tarvittavia oikeuksia

Voit selvittää ongelman seuraavasti:

  • Suorita hae tietojoukko. Onko ominaisuus IsEffectiveIdentityRequired tosi?
  • Mikä tahansa EffectiveIdentity vaatii käyttäjänimen.
  • Mikäli IsEffectiveIdentityRolesRequired on tosi, rooli vaaditaan.
  • Tietojoukon tunnus on pakollinen, minkä tahansa EffectiveIdentityn kanssa.
  • Pääkäyttäjän on oltava yhdyskäytävän järjestelmänvalvoja käyttääkseen Analysis Servicesiä.

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

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

  • ConsentTest tarvitsee organisaatiosi resurssien käyttöoikeuden, jonka vain järjestelmänvalvoja voi myöntää. Pyydä järjestelmänvalvojaa myöntämään käyttöoikeus tähän sovellukseen, jotta voit käyttää sitä.

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

    ConsentTest

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

Pääsyy:
Käyttäjän lupa on poistettu käytöstä vuokraajalle.

Ongelma voidaan korjata eri tavoin:

  • Ota käyttäjän lupa käyttöön koko vuokraajalle (kaikki käyttäjät, kaikki sovellukset)
  1. Siirry Azure-portaali kohtaan "Azure Active Directory" => "Käyttäjät ja ryhmät" => "Käyttäjäasetukset"

  2. Ota käyttöön ”Käyttäjät voivat antaa sovelluksille luvan käyttää yrityksen tietoja puolestaan” -asetus ja tallenna muutokset

    ConsentTest-korjaus

  • 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 virheilmoitukset "'AuthenticationContext' ei sisällä 'AcquireToken'-määritettä, eikä löytynyt käytettävissä olevaa 'AcquireToken'-tunnistetta, joka hyväksyisi 'AuthenticationContext'-arvon (puuttuuko using-direktiivi tai kokoonpanoviittaus?).

Azure AD tunnus toiselle vuokraajalle (vieraskäyttäjälle)

Kun upotat organisaatiolle, jotta Azure AD vieraskäyttäjät voivat käyttää sisältöäsi, sinun on määritettävä vuokraajatunnus parametrissaauthorityUri.

  • URL-osoite organisaation vuokraajan todentamiseen:

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

  • URL-osoite vieraskäyttäjän Azure AD todentamiseen:

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

Vuokraajan tunnuksen löytämiseksi voit käyttää vuokraajan Microsoft Azure AD tunnuksen ja ensisijaisen toimialuenimen etsiminen -kohdan ohjeita.

Lisätietoja on ohjeaiheessa Miten: Kirjaudu sisään kuka tahansa Azure Active Directory -käyttäjä monitallentoisen sovellusmallin avulla.

Tietolähteet

ISV haluaa eri tunnistetiedot samalle tietolähteelle

Tietolähteellä voi olla vain yhdet tunnistetiedot yhtä pääkäyttäjää kohden. Mikäli haluat käyttää eri tunnistetietoja, luo ylimääräisiä pääkäyttäjiä. Määritä sitten eri tunnistetiedot kunkin pääkäyttäjän kohdalla ja upota ne käyttämällä käyttäjän Azure AD -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 on tarkasteltava asianmukaista yleisten virheiden taulukkoa, joka soveltuu käyttämääsi upotustyyppiin. Vertaa IError-ominaisuuksia taulukossa oleviin ja etsi mahdolliset syyt virheeseen.

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

Viesti Yksityiskohtainen viesti Virhekoodi Mahdolliset syyt
TokenExpired 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ä
  • TokenExpired Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella. Visualisoinnin otsikkoa ei voitu hahmontaa raportin visualisoinnissa Kyselytietojen vanhentunut tunnus
    OpenConnectionError Visualisointia ei voi näyttää. Visualisoinnin otsikkoa ei voitu hahmontaa raportin visualisoinnissa Kapasiteetti on keskeytetty tai poistettu, kun kapasiteettiin liittyvä raportti oli avoimena istunnossa
    ExplorationContainer_FailedToLoadModel_DefaultDetails Tähän raporttiin liittyvän mallirakenteen lataaminen epäonnistui. Varmista, että palvelimeen on yhteys, ja yritä uudelleen.
  • Kapasiteetti keskeytetty
  • Kapasiteetti poistettu
  • Tavalliset virheet käytettäessä upotusta Power BI -käyttäjien käyttöön (upotustunnuksen avulla)

    Viesti Yksityiskohtainen viesti Virhekoodi Syyt
    TokenExpired 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, virheellinen tunnus
    PowerBINotAuthorizedException Raportin hakeminen epäonnistui 401 Väärä/valtuuttamaton ryhmän tunnus
    TokenExpired Käyttöoikeustietue on vanhentunut, lähetä uudelleen uudella käyttöoikeustietueella. Visualisoinnin otsikkoa ei voitu hahmontaa raportin visualisoinnissa Kyselytietojen vanhentunut tunnus
    OpenConnectionError Visualisointia ei voi näyttää. Visualisoinnin otsikkoa ei voitu hahmontaa raportin visualisoinnissa Kapasiteetti on keskeytetty tai poistettu, kun kapasiteettiin liittyvä raportti oli avoimena istunnossa
    ExplorationContainer_FailedToLoadModel_DefaultDetails Tähän raporttiin liittyvän mallirakenteen lataaminen epäonnistui. Varmista, että palvelimeen on yhteys, ja yritä uudelleen.
  • Kapasiteetti keskeytetty
  • Kapasiteetti poistettu
  • Raportin hakeminen epäonnistuu – virhe 401 – ratkaise itse

    Joskus käyttäjä omistaa tiedot -skenaarion käyttäjät saavat 401-virheen, joka ratkeaa itsestään, kun he käyttävät Power BI -portaalia. Kun näin käy, lisää RefreshUser Permissions -kutsu sovellukseen kohdassa Käyttäjien käyttöoikeuksien päivittäminen kuvatulla tavalla.

    Datasets

    Käyttäjien näkemien tietojen osan hallinta

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

    Voit hallita sitä, mitä osaa käyttäjistä voi tarkastella, käyttämällä jotakin seuraavista menetelmistä:

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

    • Objektitason suojaus (OLS).

    • Erota tiedot eri tietojoukkoihin. Voit esimerkiksi luoda tietojoukon, joka sisältää vain koostettuja tietoja ja antaa käyttäjillesi käyttöoikeuden vain kyseiseen tietojoukkoon.

    Sisällön hahmontaminen

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

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

    Jos haluat sulkea pois sovelluksen tai upottamisen ohjelmointirajapintoihin liittyvät ongelmat, 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 Upotetun Power BI -analytiikan leikkikentällä.

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

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

    Suorituskyky

    Jos haluat saada parhaiten toimivan upotetun sisällön, suosittelemme, että noudatat upotetun Power BI -analytiikan parhaita käytäntöjä.

    Upottamisen määritystyökalu

    Voit käyttää upottamisen määritystyökalua ladataksesi mallisovelluksen nopeasti. Sitten 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 tarkoitettua upotus -mallisovellusta

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

    • Valitsemalla Myönnä käyttöoikeuksia (myönnä käyttöoikeuksia -vaihe), saat seuraavan virheen:
    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 käytettäessä ilmestyy 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 ja täytä pbisalasana-kenttään käyttäjän salasana.

    • Jos saat virhesanoman AADSTS50079: käyttäjän pitää käyttää monimenetelmäistä todentamista.

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

    Organisaatiolle tarkoitetun upotuksen -mallisovellus

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

    • Käyttäessäsi organisaatiolle tarkoitettu upotus -mallisovellusta, saat seuraavan virheen:
    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ä https://localhost:13526/ uudelleenohjauksen URL-osoitteena.

    Jos haluat muokata rekisteröityä sovellusta, päivitä Azure AD rekisteröity sovellus, jotta sovellus voi tarjota pääsyn verkon ohjelmointirajapintoihin.

    Jos haluat muokata Power BI -käyttäjäprofiilia tai tietoja, lue ohjeet Power BI -tietojen muokkaamiseen.

    • Jos näyttöön tulee virhe - AADSTS50079: käyttäjän pitää käyttää monimenetelmäistä todentamista.

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

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

    Onko sinulla kysyttävää? Kokeile Power BI -yhteisöä

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

    Seuraavat vaiheet

    Onko sinulla kysyttävää? Kokeile Power BI -yhteisöä