Jelentés beágyazása helyszíni SQL Server Analysis Servicesbe (SSAS)
A KÖVETKEZŐKRE VONATKOZIK: Az alkalmazás az adatok tulajdonosa, a felhasználóé az adat
Ez a cikk bemutatja, hogyan ágyazhat be Power BI-tartalmakat egy helyszíniAnalysis Services táblázatos modell élő kapcsolatával egy szabványos Power BI-alkalmazásba, amely rendelkezik adatalkalmazással. Ez a cikk az összes élő kapcsolati SSAS-modellre vonatkozik, függetlenül attól, hogy implementálják-e az RLS-t.
Ebben a forgatókönyvben az adatbázis az SSAS (helyszíni) modellen van, és a Power BI motor egy átjárón keresztül csatlakozik hozzá. A biztonsági szerepkörök (RLS) és engedélyek ( ha vannak ilyenek) az SSAS-modellben vannak definiálva, és nem a Power BI Desktopban.
Kinek szól ez a cikk?
Ez a cikk leginkább azon isv-k számára fontos, akik már rendelkeznek helyszíni (SSAS) adatbázis-beállítással (RLS-sel vagy anélkül), és közvetlenül onnan szeretnének beágyazni tartalmakat.
ISV beállítása
A helyszíni sorszintű biztonság csak élő kapcsolattal érhető el, de bármilyen adatbázishoz létrehozhat élő kapcsolatot, függetlenül attól, hogy az RLS-t valósít-e meg. This includes:
- RLS-szerepkörökkel nem rendelkező adatbázisok beállítása
- Egy vagy több szerepkörhöz tartozó tagokkal rendelkező adatbázisok
- Statikus vagy dinamikus biztonsági szerepkörrel rendelkező adatbázisok
Ha SSAS-modellből szeretne beágyazni egy jelentést, a következő műveleteket kell végrehajtania:
Az átjáró beállítása
Adatforrás-kapcsolat hozzáadása az SSAS-átjáróhoz
Adja meg az adatforrás nevét, az adatforrás típusát, a kiszolgálót, az adatbázist, az active directory által felismert felhasználónevet és jelszót.
Az átjárók létrehozásáról és kezeléséről további információt az átjáró adatforrásának hozzáadása vagy eltávolítása című témakörben talál.
Szolgáltatásnév vagy főfelhasználói engedélyek megadása az átjárón
A beágyazási jogkivonatot létrehozó felhasználónak az alábbi engedélyek egyikére is szüksége van:
Átjáró rendszergazdai engedélyei
Adatforrás megszemélyesítési engedélye (ReadOverrideEffectiveIdentity)
A megszemélyesítési (felülbírálási) engedéllyel rendelkező felhasználók neve mellett kulcsikon látható.
Az alábbi utasításokat követve átjáróengedélyeket adhat a fő felhasználónak, szolgáltatásnévnek vagy szolgáltatásnév-profilnak.
Tegye az alábbiak egyikét :
Felhasználónevek leképezése
Ha a helyszíni címtárban és a Microsoft Entra könyvtárban lévő felhasználónevek eltérőek, és meg szeretné tekinteni az adatokat a portálon, létre kell hoznia egy felhasználóleképezési táblát, amely leképezi a Microsoft Entra-azonosítóban szereplő összes felhasználót vagy szerepkört a helyszíni adatbázis felhasználóira. A felhasználónevek leképezésére vonatkozó utasításokért tekintse meg a felhasználói név manuális újrafelfedezését
További információ: Analysis Services-adatforrások felhasználóneveinek leképezése.
Élő kapcsolat létrehozása
A környezet beállítása után hozzon létre egy élő kapcsolatot a Power BI Desktop és az SQL Server között, és hozza létre a jelentést.
Indítsa el a Power BI Desktopot, és válassza az Adatadatbázis lekérése lehetőséget.>
Az adatforrások listájában válassza ki az SQL Server Analysis Services-adatbázist, majd válassza a Csatlakozás.
Adja meg az Analysis Services táblázatos példányának adatait, és válassza Csatlakozás élőben. Ezután válassza az OK gombra.
Beágyazási jogkivonat létrehozása
Ha a jelentést az ügyfelek számára készült beágyazási forgatókönyvbe szeretné beágyazni, hozzon létre egy beágyazási jogkivonatot, amely átadja az érvényes identitást a Power BI-nak. Az AS-motorokkal létesített összes élő kapcsolatnak hatékony identitásra van szüksége, még akkor is, ha nincs implementálva RLS.
Ha nincs beállítva RLS, akkor csak a Rendszergazda fér hozzá az adatbázishoz, ezért a Rendszergazda szeretné érvényes identitásként használni.
A beágyazási jogkivonat létrehozásához szükséges információk attól függenek, hogy szolgáltatásnévvel vagy főfelhasználóként csatlakozik-e a Power BI-hoz, és hogy az adatbázis rendelkezik-e RLS-sel.
- Fő felhasználói beágyazási jogkivonat
- Szolgáltatásnév vagy szolgáltatásnév-profil beágyazási jogkivonata
A beágyazási jogkivonat létrehozásához adja meg a következő információkat:
- Felhasználónév (nem kötelező, ha nincs RLS. Kötelező az RLS-hez) – Az SSAS által felismert érvényes felhasználónév, amelyet a rendszer érvényes identitásként fog használni. Ha az adatbázis nem használja az RLS-t, és nincs megadva felhasználónév, a rendszer a főfelhasználó hitelesítő adatait használja.
- Szerepkör (az RLS-hez szükséges) – A jelentés csak akkor jelenít meg adatokat, ha a tényleges identitás tagja a szerepkörnek.
Példa:
public EmbedToken GetEmbedToken(Guid reportId, IList<Guid> datasetIds, [Optional] Guid targetWorkspaceId)
{
PowerBIClient pbiClient = this.GetPowerBIClient();
// Define the user identity and roles. Use one of the following:
var rlsidentity = new EffectiveIdentity( //If no RLS
username: "Domain\\Username", // can also be username@contoso.com
datasets: new List<string>{ datasetId.ToString()}
)
var rlsidentity = new EffectiveIdentity( // If RLS
username: "username@contoso.com",
roles: new List<string>{ "MyRole" },
datasets: new List<string>{ datasetId.ToString()}
)
// Create a request for getting an embed token for the rls identity defined above
var tokenRequest = new GenerateTokenRequestV2(
reports: new List<GenerateTokenRequestV2Report>() { new GenerateTokenRequestV2Report(reportId) },
datasets: datasetIds.Select(datasetId => new GenerateTokenRequestV2Dataset(datasetId.ToString())).ToList(),
targetWorkspaces: targetWorkspaceId != Guid.Empty ? new List<GenerateTokenRequestV2TargetWorkspace>() { new GenerateTokenRequestV2TargetWorkspace(targetWorkspaceId) } : null,
identities: new List<EffectiveIdentity> { rlsIdentity }
);
// Generate an embed token
var embedToken = pbiClient.EmbedToken.GenerateToken(tokenRequest);
return embedToken;
}
Most már beágyazhatja a jelentést az alkalmazásba, és a jelentés a jelentéshez hozzáférő felhasználó engedélyeinek megfelelően szűri az adatokat.
Szempontok és korlátozások
A CustomData nem támogatott.