Share via


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:

  1. Az átjáró beállítása
  2. Élő kapcsolat létrehozása
  3. Beágyazási jogkivonat létrehozása

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

    Screenshot of a gateway member with a key icon next to their name.

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.

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.

  1. Indítsa el a Power BI Desktopot, és válassza az Adatadatbázis lekérése lehetőséget.>

  2. Az adatforrások listájában válassza ki az SQL Server Analysis Services-adatbázist, majd válassza a Csatlakozás.

    Connect to SQL Server Analysis Services Database.

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

    Screenshot of Analysis Services details.

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.

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.

Beágyazási jogkivonat létrehozása