Zabezpečenie na úrovni riadkov (RLS) v Power BI

Zabezpečenie na úrovni riadkov v Power BI umožňuje obmedziť určitým používateľom prístup k údajom. Filtre obmedzujú prístup k údajom na úrovni riadkov a vy môžete filtre definovať v rámci rolí. Členovia pracovného priestoru v službe Power BI majú prístup k množinám údajov v pracovnom priestore. Zabezpečenie na úrovni riadkov (RLS) neobmedzuje tento prístup k údajom.

Zabezpečenie na úrovni riadkov môžete nakonfigurovať pre dátové modely importované do Power BI pomocou aplikácie Power BI Desktop. Zabezpečenie na úrovni riadkov môžete nakonfigurovať aj pre množiny údajov, ktoré používajú režim DirectQuery, ako je napríklad SQL Server. V prípade dynamických pripojení služby Analysis Services alebo Azure Analysis Services sa zabezpečenie na úrovni riadkov konfiguruje v modeli, nie v aplikácii Power BI Desktop. Možnosť zabezpečenia sa v prípade množín údajov so živým pripojením nezobrazí.

Definovanie rolí a pravidiel v aplikácii Power BI Desktop

V aplikácii Power BI Desktop môžete definovať roly a pravidlá. Pri publikovaní do služby Power BI sa budú publikovať aj definície rolí.

Ak chcete definovať roly zabezpečenia, postupujte podľa týchto krokov.

  1. Importujte údaje do zostavy Power BI Desktop alebo nakonfigurujte pripojenie DirectQuery.

    Poznámka

    V aplikácii Power BI Desktop nemožno definovať roly pre dynamické pripojenia služby Analysis Services. Tieto roly je potrebné definovať v rámci modelu služby Analysis Services.

  2. Na karte Modelovanie vyberte položku Spravovať roly.

    Vyberte položku Spravovať roly

  3. V okne Spravovať roly vyberte položku Vytvoriť.

    Vyberte položku Vytvoriť

  4. V časti Roly zadajte názov roly.

  5. V časti Tabuľky vyberte tabuľku, pre ktorú sa má použiť pravidlo DAX.

  6. Do poľa Tabuľka filtrovania výrazov DAX zadajte výrazy DAX. Tento výraz vráti hodnotu TRUE alebo FALSE. Napríklad: [Entity ID] = “Value”.

    Okno spravovania rolí

    Poznámka

    V tomto výraze môžete použiť parameter username() . Nezabudnite, že v aplikácii Power BI Desktop bude mať parameter username() formát DOMENA\menopouzivatela. V rámci služby Power BI a Power BI Report Servera nemá formát hlavného mena používateľa (UPN). Alternatívne môžete použiť parameter userprincipalname() , ktorý používateľa vždy vráti vo formáte hlavného mena používateľa, username@contoso.com.

  7. Po vytvorení výrazu DAX ho môžete overiť výberom znaku začiarknutia nad poľom výrazu.

    Overenie výrazu DAX

    Poznámka

    V tomto poli výrazu sa argumenty funkcie DAX oddeľujú čiarkami, aj keď používate miestne nastavenie, ktoré bežne používa bodkočiarky (napr. francúzština alebo nemčina).

  8. Vyberte položku Uložiť.

V aplikácii Power BI Desktop nemožno priradiť používateľov k rolám. Môžete ich priradiť v službe Power BI. V aplikácii Power BI Desktop môžete povoliť dynamické zabezpečenie tak, že použijete funkcie DAX s parametrami username() alebo userprincipalname() a nakonfigurujete správne vzťahy.

V predvolenom nastavení používa filtrovanie zabezpečenia na úrovni riadkov jednosmerné filtre, či sú vzťahy nastavené na jeden smer alebo obojsmerne. Obojsmerný krížový filter so zabezpečením na úrovni riadkov môžete povoliť manuálne, keď vyberiete vzťah a začiarknete políčko Používanie filtrov zabezpečenia v oboch smeroch. Túto možnosť vyberte, ak ste implementovali dynamické zabezpečenie na úrovni riadkov aj na úrovni servera, kde zabezpečenie na úrovni riadkov prebieha na základe mena používateľa alebo prihlasovacieho ID.

Ďalšie informácie nájdete v technickom článku Obojsmerné krížové filtrovanie pomocou režimu DirectQuery v aplikácii Power BI Desktop a Zabezpečenie tabuľkového sémantického modelu BI.

Použitie filtra zabezpečenia

Overenie rolí v aplikácii Power BI Desktop

Po vytvorení rolí môžete výsledky rolí otestovať v aplikácii Power BI Desktop.

  1. Na karte Modelovanie vyberte položku Zobraziť ako.

    Výber položky Zobraziť ako roly

    Zobrazí sa okno Zobraziť ako roly, kde sa zobrazia roly, ktoré ste vytvorili.

    Okno Zobraziť ako roly

  2. Vyberte rolu, ktorú ste vytvorili, potom výberom položky OK túto rolu použite.

    Zostava vykreslí údaje relevantné pre danú rolu.

  3. Môžete tiež vybrať položku Iný používateľ a zadať daného používateľa.

    Výber iného používateľa

    Odporúča sa zadať hlavné meno používateľa (UPN), teda to, ktoré sa bude používať v službe Power BI a na Power BI Report Serveri.

    V aplikácii Power BI Desktop zobrazí možnosť Iný používateľ odlišné výsledky iba v prípade, ak používate dynamické zabezpečenie založené na výrazoch DAX.

  4. Vyberte tlačidlo OK.

    Zostava sa vykreslí na základe toho, čo daný používateľ môže vidieť.

Po overovaní rolí v tomto článku teraz Power BI Desktop pokračovať a publikovať zostavu v zostave služba Power BI.

Spravovanie zabezpečenia v modeli

Ak chcete spravovať zabezpečenie v dátový modeli, otvorte pracovný priestor, do ktorého ste zostavu uložili v služba Power BI a vykonajte nasledujúce kroky:

  1. V službe Power BI vyberte ponuku Ďalšie možnosti pre množinu údajov. Táto ponuka sa zobrazí, keď ukážete na názov množiny údajov, a to bez ohľadu na to, či ju vyberiete z navigačnej ponuky alebo stránky pracovného priestoru.

    Ponuka Ďalšie možnosti v pracovnom priestore

    Ponuka Ďalšie možnosti v navigačnej ponuke

  2. Vyberte kartu Zabezpečenie.

    Výber možnosti Zabezpečenie z ponuky Ďalšie možnosti

Pomocou možnosti Zabezpečenie sa zobrazí stránka zabezpečenia Role-Level, na ktorej môžete pridávať členov k roli, ktorú ste vytvorili v Power BI Desktop. Zabezpečenie sa zobrazí iba vlastníkom množiny údajov. Ak je množina údajov v skupine, možnosť Zabezpečenie sa zobrazuje iba správcom danej skupiny.

V aplikácii Power BI Desktop môžete roly iba vytvárať alebo upravovať.

Práca s členmi

Pridanie členov

V služba Power BI môžete k role pridať člena zadaním e-mailovej adresy alebo mena používateľa alebo skupiny zabezpečenia. Skupiny vytvorené v službe Power BI nie je možné pridávať. Môžete pridávať členov, ktorí nepatria do vašej organizácie.

Na nastavenie zabezpečenia na úrovni riadkov môžete použiť nasledujúce skupiny.

  • Distribučná skupina
  • Skupina s podporou e-mailu
  • Skupina zabezpečenia

Upozorňujeme však, že Office 365 nie sú podporované a nie je možné ich pridať do žiadnych rolí.

Pridať člena

Podľa čísla v zátvorke vedľa názvu roly alebo vedľa položky Členovia môžete tiež zistiť, koľko členov má priradených danú rolu.

Členovia v roli

Odstránenie členov

Členov môžete odstrániť výberom symbolu X vedľa ich mena.

Odstránenie člena

Overenie roly v službe Power BI

Definovanú rolu môžete overiť tak, že v súbore služba Power BI tým, že ju testujete.

  1. Vyberte položku Ďalšie možnosti (...) vedľa roly.
  2. Vyberte položku Otestovať údaje ako rolu.

Otestovať ako rolu

Zobrazia sa zostavy, ktoré sú pre danú rolu dostupné. V tomto zobrazení sa nezobrazujú tabule. V hlavičke stránky sa zobrazuje používaná rola.

Teraz sa zobrazuje ako

Výberom možnosti Teraz sa zobrazuje ako otestujte iné roly alebo ich kombináciu.

Otestovanie iných rolí

Ak chcete overiť funkčnosť rolí, môžete údaje zobraziť ako konkrétna osoba alebo vybrať kombináciu dostupných rolí.

Ak sa chcete vrátiť do normálneho zobrazenia, vyberte položku Späť na zabezpečenie na úrovni riadkov.

Používanie parametra username() alebo userprincipalname() funkcie DAX

V rámci množiny údajov môžete využiť používateľské meno () funkcií JAZYKA DAX alebo meno používateľa(). Môžete ich použiť v rámci výrazov v aplikácii Power BI Desktop. Keď model zverejníte, použije sa v službe Power BI.

V aplikácii Power BI Desktop vráti parameter username() používateľa vo formáte DOMÉNA\Používateľ a userprincipalname() používateľa vo formáte user@contoso.com.

V službe Power BI parameter username() aj userprincipalname() vrátia hlavné meno používateľa (UPN). Je podobné e-mailovej adrese.

Používanie zabezpečenia na úrovni riadkov s pracovnými priestormi v Power BI

Ak publikujete zostavu Power BI Desktop do nového prostredia pracovného priestoru v pracovnom priestore služba Power BI, roly zabezpečenia na úrovni roly RLS sa použijú na členov, ktorí majú v pracovnom priestore priradenú rolu Prezerajúci používateľa. Aj v prípade, že diváci dostali na množinu údajov povolenia na vytváranie, stále platí aj RLS. Ak napríklad diváci s povoleniami na vytváranie používajú funkciu Analyzovať v Excel, ich zobrazenie údajov bude chránené prostredníctvom zabezpečenia na zabezpečenie na čítanie (RLS). Členovia pracovného priestoru s priradenou rolou Správca, Člen alebo Prispievateľ majú povolenie na úpravu množiny údajov, a preto sa na nich RLS nevzťahuje. Ak chcete, aby sa RLS vzťahuje na ľudí v pracovnom priestore, môžete im priradiť len rolu Prezerač. Prečítajte si viac o rolách v nových pracovných priestoroch.

Upozornenie

Ak ste nakonfigurovali klasický pracovný priestor tak, aby členovia mali povolenia na úpravy, roly zabezpečenia na úrovni rolí sa na nich nebudú uplatňovať. Používatelia môžu zobraziť všetky údaje. Prečítajte si viac o klasických pracovných priestoroch.

Nastavenia skupiny

Dôležité informácie a obmedzenia

Aktuálne obmedzenia pre zabezpečenie na úrovni riadkov v cloudových modeloch sú nasledovné:

  • Ak ste už predtým definovali roly a pravidlá v službe Power BI, musíte ich znovu vytvoriť v aplikácii Power BI Desktop.

  • Zabezpečenie na úrovni riadkov môžete definovať len pre množiny údajov vytvorené pomocou aplikácie Power BI Desktop. Ak chcete povoliť zabezpečenie na úrovni riadkov pre množiny údajov vytvorené v Exceli, musíte súbory najprv konvertovať na súbory aplikácie Power BI Desktop (PBIX). Ďalšie informácie

  • Objekty služby nie je možné pridať do roly zabezpečenia na základe roly RLS. Zabezpečenie na základe toho sa nebude používať v aplikáciách, ktoré používajú hlavný názov služby ako poslednú efektívnu identitu.

  • Podporované je len importovanie a pripojenia DirectQuery. Dynamické pripojenia k službám Analysis Services sa spracúvajú v lokálnom modeli.

Známe problémy

Existuje známy problém, kedy sa zobrazí chybové hlásenie pri pokuse o publikovanie už publikovanej zostavy zo Power BI Desktop. Scenár je takýto:

  1. Anna má množinu údajov s nakonfigurovaným zabezpečením na úrovni riadkov, ktorá je publikovaná v službe Power BI.

  2. Anna aktualizuje zostavu v aplikácii Power BI Desktop a opäť ju publikuje.

  3. Anne sa zobrazí chyba.

Alternatívne riešenie: Opätovne publikujte súbor aplikácie Power BI Desktop zo služby Power BI, kým sa tento problém nevyrieši. Môžete to urobiť výberom položky Získať údajové > súbory.

Najčastejšie otázky

Otázka: Ako postupovať, ak sme predtým vytvorili roly a pravidlá pre množinu údajov v službe Power BI? Ak nič neurobíme, budú naďalej fungovať?
Odpoveď: Nie, vizuály sa nevykreslia správne. Roly a pravidlá budete musieť znovu vytvoriť v aplikácii Power BI Desktop a potom zverejniť v službe Power BI.

Otázka: Môžem vytvoriť tieto roly pre zdroje údajov v službách Analysis Services?
Odpoveď: Áno, ak ste importovali údaje do aplikácie Power BI Desktop. Ak používate dynamické pripojenie, nebudete môcť v službe Power BI nakonfigurovať zabezpečenie na úrovni riadkov. To je definované lokálne v rámci modelu služieb Analysis Services.

Otázka: Môžem používať zabezpečenie na úrovni riadkov na ohraničenie stĺpcov alebo mierok, ktoré sú dostupné pre mojich používateľov?
Odpoveď: Nie, ak má používateľ prístup k určitému riadku údajov, vidí v tomto riadku všetky stĺpce údajov.

Otázka: Môžem pomocou zabezpečenia na úrovni riadkov skryť podrobné údaje, ale poskytnúť prístup k údajom zhrnutým vo vizuálnych prvkoch?
Odpoveď: Nie. Hoci zabezpečujete jednotlivé riadky údajov, používatelia vždy vidia podrobnosti alebo súhrnné údaje.

Otázka: Môj zdroj údajov už má definované roly zabezpečenia (napríklad SQL Server alebo roly SAP BW). Aký je vzťah medzi nimi a RLS?
Odpoveď: Odpoveď závisí od toho, či importujete údaje alebo používate DirectQuery. Ak importujete údaje do množiny údajov Power BI, roly zabezpečenia v zdroji údajov sa nepoužívajú. V tomto prípade by ste mali definovať RLS na vynútenie pravidiel zabezpečenia pre používateľov, ktorí sa pripájajú v službe Power BI. Ak používate DirectQuery, používajú sa roly zabezpečenia v zdroji údajov. Keď používateľ otvorí zostavu, Power BI odošle dotaz do základného zdroja údajov, ktorý použije pravidlá zabezpečenia na údaje na základe poverení používateľa.

Ďalšie kroky