Beágyazott alkalmazás hibaelhárítása

Ez a cikk a Power BI-ból származó tartalom beágyazásakor felmerülő gyakori problémákat ismerteti.

Hibaelhárítási eszközök

Fiddler-nyomkövetés

A Fiddler a Telerik ingyenes eszköze, amely a HTTP-forgalmat figyeli. Az ügyfélszámítógépről a Power BI API-kkal látható a forgalom. Ez az eszköz hibákat és más kapcsolódó információkat jeleníthet meg.

Képernyőkép a Fiddler eszköz kimeneti ablakáról, amely a Power BI API HTTP-forgalmát mutatja.

F12 a Böngészőben az előtérbeli hibakereséshez

Az F12 billentyű elindítja a fejlesztői ablakot a böngészőben. Ez az eszköz lehetővé teszi a hálózati forgalom megtekintését és más értékes információk megtekintését.

Képernyőkép a webböngésző fejlesztői ablakÁnak Hálózat lapjára, amely a hálózati forgalmat mutatja.

Hiba részleteinek kinyerve a Power BI-válaszból

Ez a kódrészlet bemutatja, hogyan nyerheti ki a hiba részleteit EGY HTTP-kivételből:

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

Javasoljuk a kérelem azonosítójának naplózását (és a hibaelhárítási hiba részleteit). Adja meg a kérés azonosítóját a Microsoft támogatási szolgálatának megkeresésekor.

Alkalmazásregisztráció

Alkalmazásregisztrációs hiba

Az Azure Portalon vagy a Power BI alkalmazásregisztrációs oldalán megjelenő hibaüzenetek értesítik, ha nem rendelkezik megfelelő jogosultságokkal az alkalmazás regisztrálásához. Az alkalmazások regisztrálásához rendszergazdai jogosultságokkal kell rendelkeznie a Microsoft Entra-bérlőben, vagy engedélyezni kell az alkalmazásregisztrációkat a nem rendszergazdai felhasználók számára.

Power BI szolgáltatás nem jelenik meg az Azure Portalon új alkalmazás regisztrálásakor

Legalább egy felhasználónak regisztráltnak kell lennie a Power BI-ra. Ha nem jelenik meg Power BI szolgáltatás az API-listában, a rendszer nem regisztrál felhasználót a Power BI-ra.

Mi a különbség az alkalmazásobjektum-azonosító és az egyszerű objektumazonosító között?

Amikor regisztrál egy Microsoft Entra-alkalmazást, két paramétert nevezünk objektumazonosítónak. Ez a szakasz ismerteti az egyes paraméterek célját és beszerzésének módját.

Alkalmazásobjektum azonosítója

Az alkalmazásobjektum-azonosító , más néven az objektumazonosító a Microsoft Entra alkalmazásobjektum egyedi azonosítója.

Az alkalmazásobjektum-azonosító lekéréséhez keresse meg a Microsoft Entra-alkalmazást, és másolja ki az Áttekintésből.

Képernyőkép az Azure Portal ablakáról, amely egy Microsoft Entra-alkalmazás Áttekintés paneljén megjeleníti az objektumazonosítót.

Egyszerű objektum azonosítója

Az egyszerű objektumazonosító, más néven az objektumazonosító a Microsoft Entra-alkalmazáshoz társított egyszerű szolgáltatásobjektum egyedi azonosítója.

Az egyszerű objektumazonosító lekéréséhez keresse meg a Microsoft Entra-alkalmazást, és az Áttekintés területen válassza ki az alkalmazás hivatkozását a helyi címtár felügyelt alkalmazásában.

Képernyőkép az Azure Portal ablakáról, amely egy Microsoft Entra-alkalmazás Áttekintés paneljén megjeleníti a felügyelt alkalmazást a helyi címtárban lehetőséggel.

Másolja ki az objektumazonosítót a Tulajdonságok szakaszból.

Képernyőkép az Azure Portal ablakáról, amely egy Microsoft Entra-alkalmazás Áttekintés paneljének Tulajdonságok szakaszában az egyszerű objektumazonosítót jeleníti meg.

Hitelesítés

A hitelesítés nem sikerült: AADSTS70002 vagy AADSTS50053

(AADSTS70002: Hiba történt a hitelesítő adatok ellenőrzésekor. AADSTS50053: Túl sokszor próbált bejelentkezni helytelen felhasználói azonosítóval vagy jelszóval)

Ha a Power BI Embedded és a Microsoft Entra közvetlen hitelesítést használ, előfordulhat, hogy a bejelentkezéskor az előzőhöz hasonló üzenetet kap, mert a közvetlen hitelesítés nincs engedélyezve.

A közvetlen hitelesítést a szervezetre vonatkozó Microsoft Entra-szabályzattal vagy szolgáltatásnévvel kapcsolhatja vissza.

Javasoljuk, hogy ezt a szabályzatot csak alkalmazásonként engedélyezze.

A szabályzat létrehozásához globális Rendszergazda istratornak kell lennie ahhoz a címtárhoz, amelyben a szabályzatot létrehozza és hozzárendeli. Íme egy példaszkript a szabályzat létrehozásához és az alkalmazás sp-hez való hozzárendeléséhez:

  1. Telepítse a Microsoft Graph PowerShell SDK-t.

  2. Futtassa a következő PowerShell-parancsokat soronként (győződjön meg arról, hogy a változó $sp nem rendelkezik egynél több alkalmazással).

    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
    

A szabályzat hozzárendelése után a tesztelés előtt várjon körülbelül 15–20 másodpercet a propagálásra.

A jogkivonat létrehozása sikertelen, ha hatékony identitást ad meg

GenerateToken néhány különböző okból meghiúsulhat a megadott hatékony identitással:

  • A szemantikai modell nem támogatja a hatékony identitást.
  • A felhasználónév nem lett megadva.
  • A szerepkör nem lett megadva.
  • DatasetId nem volt megadva.
  • A felhasználó nem rendelkezik a megfelelő engedélyekkel.

A probléma meghatározásához próbálkozzon az alábbi lépésekkel:

  • Futtassa az adathalmaz lekérését. Igaz a tulajdonság IsEffectiveIdentityRequired ?
  • Felhasználónévre van szükség bármely EffectiveIdentity.
  • Ha IsEffectiveIdentityRolesRequired igaz, szerepkörre van szükség.
  • DatasetIdEffectiveIdentitybármely .
  • Az Analysis Services esetében a fő felhasználónak átjáró-rendszergazdának kell lennie.

AADSTS90094: A hozzájáruláshoz rendszergazdai engedély szükséges

Tünetek:

Ha egy nem rendszergazda felhasználó először próbál bejelentkezni egy alkalmazásba a hozzájárulás megadásakor, az alábbi hibák egyikét kapja:

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

    Képernyőkép az Azure Portal bejelentkezési párbeszédpaneljéről, amelyen a Hozzájárulási teszt engedélyhiba látható.

A rendszergazdai felhasználók sikeresen bejelentkezhetnek és hozzájárulást adhatnak.

Kiváltó ok:

A bérlő felhasználói beleegyezése le van tiltva.

Több javítás is lehetséges:

  • A teljes bérlő (minden felhasználó, minden alkalmazás) felhasználói hozzájárulásának engedélyezése:
  1. Az Azure Portalon keresse meg a Microsoft Entra ID>Felhasználók és csoportok>felhasználói beállításait.
  2. A Felhasználók engedélyezhetik, hogy a felhasználók a nevükben hozzáférhessenek a vállalati adatokhoz, és menthessék a módosításokat.

Képernyőkép az Azure Portalról.

  • A rendszergazda engedélyeket adhat az alkalmazásnak – akár a teljes bérlő, akár egy adott felhasználó számára.

CS1061-hiba

Töltse le a Microsoft.IdentityModel.Clients.ActiveDirectory fájlt, ha a következő hibát tapasztalja:

'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-jogkivonat egy másik bérlőhöz (vendégfelhasználóhoz)

Ha beágyazza a szervezet számára, hogy a Microsoft Entra vendégfelhasználói hozzáférhessenek a tartalomhoz, meg kell adnia a bérlőazonosítót a authorityUri paraméterben.

  • A szervezet bérlőjében történő hitelesítés URL-címe:

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

  • Vendég Microsoft Entra-felhasználó hitelesítésének URL-címe:

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

A bérlőazonosító megkereséséhez használja a Microsoft Entra-bérlőazonosító és az elsődleges tartománynév megkeresésére vonatkozó utasításokat.

További információ: Az alkalmazás több-bérlőssé tétele.

Adatforrások

Az ISV eltérő hitelesítő adatokkal szeretne rendelkezni ugyanahhoz az adatforráshoz

Egy adatforrás egyetlen hitelesítőadat-készlettel rendelkezhet egy fő felhasználóhoz. Ha különböző hitelesítő adatokat kell használnia, hozzon létre további főfelhasználókat. Ezután rendelje hozzá a különböző hitelesítő adatokat az egyes főfelhasználói környezetekhez, és ágyazza be a felhasználó Microsoft Entra-jogkivonatával.

Beágyazott alkalmazás hibaelhárítása az IError objektummal

A JavaScript SDK hibaeseménye által visszaadott IError objektum segítségével hibakeresést végezhet az alkalmazáson, és jobban megértheti a hibák okát.

Az IError objektum beszerzése után meg kell vizsgálnia a megfelelő gyakori hibatáblát, amely megfelel a használt beágyazási típusnak. Hasonlítsa össze az IError-tulajdonságokat a táblázatban szereplőkkel , és keresse meg a hiba lehetséges okát.

Tipikus hibák a Power BI-felhasználók beágyazásakor

Üzenet Részletes üzenet Hibakód Lehetséges ok(ok)
TokenExpired A hozzáférési jogkivonat lejárt, újraküldés új hozzáférési jogkivonattal 403 Lejárt token
PowerBIEntityNotFound A jelentés lekérése sikertelen 404
  • Helytelen jelentésazonosító
  • A jelentés nem létezik
  • Érvénytelen paraméterek a powerbiToken paraméter nincs megadva n/a
  • Nincs megadva hozzáférési jogkivonat
  • Nincs megadva jelentésazonosító
  • LoadReportFailed Nem sikerült inicializálni – Nem sikerült feloldani a fürtöt 403
  • Hibás hozzáférési jogkivonat
  • A beágyazási típus nem egyezik a token típussal
  • PowerBINotAuthorizedException A jelentés lekérése sikertelen 401
  • Helytelen csoportazonosító
  • Jogosulatlan csoport
  • TokenExpired A hozzáférési jogkivonat lejárt, és újra kell küldenie egy új hozzáférési jogkivonatot. Nem sikerült renderelni egy jelentésvizualizációt a következő címmel: vizualizáció címe n/a
  • Adatok lekérdezése
  • Lejárt token
  • Megnyitás Csatlakozás ionError A vizualizáció nem jeleníthető meg. Nem sikerült renderelni egy jelentésvizualizációt a következő címmel: vizualizáció címe n/a A kapacitás szüneteltetve vagy törölve lett, miközben a kapacitáshoz kapcsolódó jelentés meg volt nyitva egy munkamenetben
    ExplorationContainer_FailedToLoadModel_DefaultDetails A jelentéshez társított modellséma nem tölthető be. Győződjön meg arról, hogy van kapcsolata a kiszolgálóval, és próbálkozzon újra. n/a
  • Kapacitás szüneteltetve
  • Kapacitás törölve
  • Tipikus hibák a nem Power BI-felhasználók beágyazásakor (beágyazási jogkivonat használatával)

    Üzenet Részletes üzenet Hibakód Ok(ok)
    TokenExpired A hozzáférési jogkivonat lejárt, újraküldés új hozzáférési jogkivonattal 403 Lejárt token
    LoadReportFailed A jelentés lekérése sikertelen 404
  • Helytelen jelentésazonosító
  • A jelentés nem létezik
  • LoadReportFailed A jelentés lekérése sikertelen 403 A jelentésazonosító nem egyezik a jogkivonattal
    LoadReportFailed A jelentés lekérése sikertelen 500 A jelentés által megadott azonosító nem GUID azonosító
    Érvénytelen paraméterek a powerbiToken paraméter nincs megadva n/a
  • Nincs megadva hozzáférési jogkivonat
  • Nincs megadva jelentésazonosító
  • LoadReportFailed Nem sikerült inicializálni – Nem sikerült feloldani a fürtöt 403 Helytelen jogkivonattípus vagy hibás jogkivonat
    PowerBINotAuthorizedException A jelentés lekérése sikertelen 401 Helytelen/jogosulatlan csoportazonosító
    TokenExpired A hozzáférési jogkivonat lejárt, és újra kell küldenie egy új hozzáférési jogkivonatot. Nem sikerült renderelni egy jelentésvizualizációt a következő címmel: vizualizáció címe n/a
  • Adatok lekérdezése
  • Lejárt token
  • Megnyitás Csatlakozás ionError A vizualizáció nem jeleníthető meg. Nem sikerült renderelni egy jelentésvizualizációt a következő címmel: vizualizáció címe n/a A kapacitás szüneteltetve vagy törölve lett, miközben a kapacitáshoz kapcsolódó jelentés meg volt nyitva egy munkamenetben
    ExplorationContainer_FailedToLoadModel_DefaultDetails A jelentéshez társított modellséma nem tölthető be. Győződjön meg arról, hogy van kapcsolata a kiszolgálóval, és próbálkozzon újra. n/a
  • Kapacitás szüneteltetve
  • Kapacitás törölve
  • A jelentés lekérése sikertelen – 401-s hiba – önmaguk megoldása

    A felhasználó rendelkezik adatforgatókönyvvel, előfordulhat, hogy a felhasználók 401-es hibát kapnak, amely a Power BI portál elérése után megoldja magát. Amikor a 401-as hiba történik, adja hozzá a RefreshUser-engedélyek hívását az alkalmazáshoz a frissítési felhasználói engedélyekben leírtak szerint.

    Szemantikai modellek

    Az adatok azon részének kezelése, amelyet a felhasználók láthatnak

    A szemantikai modell olvasási engedélyekkel rendelkező felhasználói megtekinthetik a teljes sémát (táblákat, oszlopokat és mértékeket) és az összes adatot. Nem szabályozhatja a nyers és összesített adatok megtekintésére vonatkozó engedélyeket külön ugyanabban a szemantikai modellben.

    Az adatok azon részének kezeléséhez, amelyet a felhasználók megtekinthetnek, használja az alábbi módszerek egyikét:

    • Sorszintű szűrés a Power BI sorszintű biztonsági (RLS) használatával.

    • Objektumszintű biztonság (OLS).

    • Különítse el az adatokat különböző szemantikai modellekre. Létrehozhat például egy szemantikai modellt, amely csak összesített adatokat tartalmaz, és csak az adott szemantikai modellhez biztosít hozzáférést a felhasználóknak.

    Tartalommegjelenítés

    A beágyazott Power BI-elemek (például jelentések és irányítópultok) renderelési problémáinak megoldásához tekintse át ezt a szakaszt.

    Ellenőrizze, hogy a Power BI-elem betöltődik-e a Power BI szolgáltatás

    Az alkalmazással vagy a beágyazási API-kkal kapcsolatos problémák elhárításához ellenőrizze, hogy az elem megtekinthető-e a Power BI szolgáltatás (powerbi.com).

    Ellenőrizze, hogy a Power BI-elem betöltődik-e a Beágyazott Power BI-elemzési játszótéren

    Ha szeretné kizárni az alkalmazással kapcsolatos problémákat, ellenőrizze, hogy a Power BI-elem megtekinthető-e a Beágyazott Power BI-elemzési játszótéren.

    Ellenőrizze, hogy a hozzáférési jogkivonat nem járt-e le

    Biztonsági okokból a hozzáférési jogkivonatok (Microsoft Entra-jogkivonatok vagy beágyazási jogkivonatok) élettartama korlátozott. A hozzáférési jogkivonatot folyamatosan figyelnie kell, és szükség esetén frissítenie kell. További információ: A hozzáférési jogkivonat frissítése.

    Teljesítmény

    A legjobban teljesítő beágyazott tartalom eléréséhez javasoljuk, hogy kövesse a Beágyazott Power BI-elemzés ajánlott eljárásait.

    Beágyazási beállítási eszköz

    A beágyazási beállítási eszköz segítségével gyorsan letölthet egy mintaalkalmazást. Ezután összehasonlíthatja az alkalmazást a mintával.

    Előfeltételek

    A beágyazási beállítási eszköz használata előtt ellenőrizze, hogy rendelkezik-e az összes megfelelő előfeltétellel. Power BI Pro-fiókra és Microsoft Azure-előfizetésre van szüksége.

    Gyakori problémák

    A Beágyazás beállítási eszköz tesztelése során a következő gyakori problémák merülhetnek fel:

    A Beágyazás az ügyfelek számára mintaalkalmazás használata

    Ha az ügyfeleknek készült Beágyazás funkcióval dolgozik, mentse és csomagolja ki a PowerBI-Developer-Samples.zip fájlt. Ezután nyissa meg a PowerBI-Developer-Samples-master\App Owns Data mappát, és futtassa a PowerBIEmbedded_AppOwnsData.sln fájlt.

    • Az Engedélyek megadása (az Engedélyek megadása lépés) kiválasztásakor a következő hibaüzenet jelenik meg:
    AADSTS70001: Application with identifier <client ID> wasn't found in the directory <directory ID>
    

    A megoldás az előugró ablak bezárása, várjon néhány másodpercet, és próbálkozzon újra. Előfordulhat, hogy néhányszor meg kell ismételnie ezt a műveletet. Az időintervallum miatt a probléma az alkalmazásregisztrációs folyamat befejezésétől a külső API-k számára elérhető időpontig tart.

    • A mintaalkalmazás futtatásakor a következő hibaüzenet jelenik meg:
    Password is empty. Please fill password of Power BI username in web.config.
    

    Ez a hiba azért fordul elő, mert az egyetlen érték, amelyet nem szúr be a mintaalkalmazásba, a felhasználói jelszó. Nyissa meg a Web.config fájlt a megoldásban, és töltse ki a pbiPassword mezőt a felhasználó jelszavával.

    • Ha megjelenik a következő hibaüzenet:
    AADSTS50079: The user is required to use multi-factor authentication.
    

    Olyan Microsoft Entra-fiókot kell használnia, amely nincs engedélyezve az MFA-ra.

    A Beágyazás a cég számára mintaalkalmazás használata

    Ha a szervezeti élmény beágyazása funkcióval dolgozik, mentse és bontsa ki a PowerBI-Developer-Samples.zip fájlt. Ezután nyissa meg a PowerBI-Developer-Samples-master\User Owns Data\integrate-report-web-app mappát, és futtassa a pbi-saas-embed-report.sln fájlt.

    • Amikor futtatja a beágyazást a szervezeti mintaalkalmazáshoz, a következő hibaüzenet jelenik meg:
    AADSTS50011: The reply URL specified in the request doesn't match the reply URLs configured for the application: <client ID>
    

    Ez a hiba az, hogy a webkiszolgáló-alkalmazáshoz megadott átirányítási URL-cím eltér a minta URL-címétől. Ha regisztrálni szeretné a mintaalkalmazást, használja https://localhost:13526/ átirányítási URL-címként.

    Ha szerkeszteni szeretné a regisztrált alkalmazást, frissítse a Microsoft Entra regisztrált alkalmazást, hogy az alkalmazás hozzáférést biztosítson a webes API-khoz.

    Ha szerkeszteni szeretné a Power BI felhasználói profilját vagy adatait, megtudhatja, hogyan szerkesztheti a Power BI-adatokat.

    • Ha megjelenik a következő hibaüzenet:
    AADSTS50079: The user is required to use multi-factor authentication.
    

    Olyan Microsoft Entra-fiókot kell használnia, amely nincs engedélyezve az MFA-ra.

    További információkért tekintse meg a Power BI Embedded gyakori kérdéseit.

    További segítségért forduljon az ügyfélszolgálathoz, vagy hozzon létre egy támogatási jegyet az Azure Portalon, és adja meg a megjelenő hibaüzeneteket.

    Van még esetleg kérdése? Kérdezze meg a Power BI-közösség