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.
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.
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.
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.
Másolja ki az objektumazonosítót a Tulajdonságok szakaszból.
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:
Telepítse a Microsoft Graph PowerShell SDK-t.
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. DatasetId
EffectiveIdentity
bá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.
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:
- Az Azure Portalon keresse meg a Microsoft Entra ID>Felhasználók és csoportok>felhasználói beállításait.
- 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.
- 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 | |
Érvénytelen paraméterek | a powerbiToken paraméter nincs megadva | n/a | |
LoadReportFailed | Nem sikerült inicializálni – Nem sikerült feloldani a fürtöt | 403 | |
PowerBINotAuthorizedException | A jelentés lekérése sikertelen | 401 | |
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 | |
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 |
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 | |
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 | |
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 | |
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 |
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.
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.
- Ha még nem regisztrált a Power BI Pro-ra, a kezdés előtt regisztráljon egy ingyenes próbaverzióra.
- Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
- Saját Microsoft Entra-bérlői beállítással kell rendelkeznie.
- Telepítenie kell a Visual Studio-t (2013-es vagy újabb verzió).
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.
Kapcsolódó tartalom
Power BI Embedded – gyakori kérdések
Van még esetleg kérdése? Kérdezze meg a Power BI-közösség