Zdieľať cez


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

Zabezpečenie na úrovni riadkov v Power BI umožňuje obmedziť daný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í. V služba Power BI majú používatelia s prístupom k pracovnému priestoru prístup k sémantickým modelom v tomto pracovnom priestore. Zabezpečenie na úrovni riadkov obmedzuje prístup k údajom iba pre používateľov s povoleniami Čitateľ . Nevzťahuje sa na správcov, členov ani prispievateľov.

Zabezpečenie na úrovni riadkov môžete nakonfigurovať pre dátové modely importované do Power BI pomocou služby Power BI. Zabezpečenie na úrovni riadkov môžete nakonfigurovať aj pre sémantické modely, 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 Službe Power BI. Možnosť zabezpečenia sa v sémantických modeloch dynamického pripojenia nezobrazí.

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

V aplikácii Power BI Desktop môžete definovať roly a pravidlá. Pomocou tohto editora môžete prepínať medzi predvoleným rozbaľovacím rozhraním a rozhraním DAX. Pri publikovaní do služby Power BI môžete publikovať aj definície rolí.

Definovanie rolí zabezpečenia:

  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é vykonať v rámci modelu služby Analysis Services.

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

    Snímka obrazovky karty Modelovanie so zvýraznenou možnosťou Spravovať roly.

  3. V okne Spravovať roly vyberte položku Nové a vytvorte novú rolu.

    Snímka obrazovky okna Spravovať roly so zvýraznením tlačidla Vytvoriť novú rolu.

  4. V časti Roly zadajte názov roly a vyberte položku Zadajte.

    Snímka obrazovky okna Spravovať roly so zvýrazneným premenovaním roly.

    Poznámka

    Rolu nemôžete definovať pomocou čiarky, napríklad London,ParisRole.

  5. V časti Vybrať tabuľky vyberte tabuľku, pre ktorú chcete použiť filter zabezpečenia na úrovni riadkov.

  6. V časti Filtrovanie údajov definujte roly pomocou predvoleného editora. Vytvorené výrazy vrátia hodnotu true alebo false.

    Snímka obrazovky zobrazujúca predvolený editor okna Spravovať roly na definovanie zabezpečenia na úrovni riadkov.

    Poznámka

    Niektoré filtre zabezpečenia na úrovni riadkov podporované v službe Power BI nie je možné definovať pomocou predvoleného editora. Obmedzenia zahŕňajú výrazy, ktoré v súčasnosti možno definovať iba pomocou jazyka DAX vrátane dynamických pravidiel, ako napríklad username() alebo userprincipalname(). Ak chcete definovať roly pomocou týchto filtrov, prejdite na editor DAX.

  7. Môžete tiež vybrať položku Prepnúť do editora DAX a prepnúť na definovanie svojej roly pomocou editora DAX. Výrazy DAX vrátia hodnotu true alebo false. Napríklad: [Entity ID] = “Value”. Editor DAX je dokončený pomocou automatického dokončovania pre vzorce (intellisense). Výberom znaku začiarknutia nad poľom výrazu môžete overiť výraz a tlačidlom X nad poľom výrazu môžete vrátiť zmeny.

    Snímka obrazovky okna Spravovať roly so zvýrazneným príkladom výrazu DAX.

    Poznámka

    V tomto výraze môžete použiť parameter username( ). Uistite sa, že v aplikácii Power BI Desktop bude mať username() formát DOMENA\meno_používateľa . V služba Power BI a Power BI Report Serveri má formát hlavného mena používateľa (UPN). Prípadne 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. Okrem toho v tomto poli výrazu oddeľte argumenty funkcie DAX čiarkami, aj keď používate miestne nastavenie, ktoré bežne používa bodkočiarky (napr. francúzština alebo nemčina).

  8. Výberom položky Prepnúť na predvolený editor sa môžete prepnúť späť na predvolený editor. Ak je to možné, všetky zmeny vykonané v niektorom rozhraní editora sa zachovajú aj pri prepnutí rozhraní. Pri definovaní roly pomocou editora DAX, ktorý nemožno definovať v predvolenom editore, sa pri pokuse o prepnutie do predvoleného editora zobrazí upozornenie, že prepínanie editorov môže spôsobiť stratu niektorých informácií. Ak chcete tieto informácie zachovať, vyberte položku Zrušiť a pokračujte iba v úpravách tejto roly v editore DAX.

    Snímka obrazovky dialógového okna potvrdzujúca, že chcete prejsť na predvolený editor.

    Poznámka

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

  9. 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žba Power BI. V aplikácii Power BI Desktop môžete povoliť dynamické zabezpečenie tak, že použijete funkcie DAX s parameterom 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 . Všimnite si, že ak sa tabuľka zúčastňuje na viacerých obojsmerných vzťahoch, môžete túto možnosť vybrať len pre jeden z týchto vzťahov. Túto možnosť vyberte, ak ste implementovali dynamické zabezpečenie na úrovni riadkov aj na úrovni servera, kde zabezpečenie na úrovni riadkov je 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 službe Power BI a Zabezpečenie tabuľkového sémantického modelu BI.

Snímka obrazovky znázorňujúca nastavenie modelového vzťahu na používanie filtra zabezpečenia v oboch smeroch.

Správa zabezpečenia v modeli

Ak chcete spravovať zabezpečenie v sémantickom modeli, otvorte pracovný priestor, v ktorom ste uložili sémantický model v službe Fabric, a vykonajte nasledujúce kroky:

  1. V službe Fabric vyberte ponuku Ďalšie možnosti pre sémantický model. Táto ponuka sa zobrazí, keď ukážete na sémantický názov modelu.

    Snímka obrazovky zobrazujúca ponuku Ďalšie možnosti v navigačnej ponuke.

  2. Vyberte Zabezpečenie.

    Snímka obrazovky zobrazujúca ponuku Ďalšie možnosti s vybratou možnosťou Zabezpečenie.

Zabezpečenie vás prestúpi na stránku Zabezpečenie na úrovni roly, kde môžete pridávať členov k rolám, ktoré ste vytvorili. Prispievateľ (a vyššie roly pracovného priestoru) uvidí zabezpečenie a môže priradiť používateľov k role.

Práca s členmi

Pridať členov

V služba Power BI môžete do roly 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í nie sú členmi vašej organizácie.

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

Skupiny v Microsoft 365 nie sú podporované a nemožno ich pridať do žiadnych rolí.

Snímka obrazovky zobrazujúca spôsob pridania člena.

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

Snímka obrazovky znázorňujúca členov v role.

Odobratie členov

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

Snímka obrazovky zobrazujúca, ako odobrať člena.

Overenie roly v rámci služba Power BI

Správnu funkčnosť definovanej roly v služba Power BI môžete overiť jej otestovaním.

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

Snímka obrazovky s možnosťou Otestovať ako rolu.

Budete presmerovaní na zostavu, ktorá bola publikovaná z aplikácie Power BI Desktop s týmto sémantickým modelom, ak existuje. Tabule nie sú k dispozícii na testovanie pomocou možnosti Testovať ako rolu.

V hlavičke stránky sa zobrazuje používaná rola. Výberom možnosti Teraz sa zobrazuje ako otestujte iné roly, kombináciu rolí alebo konkrétnu osobu. Tu vidíte dôležité podrobnosti povolení týkajúce sa testovanej osoby alebo roly. Ďalšie informácie o spôsobe interakcie povolení so zabezpečením na úrovni riadkov nájdete v téme Používateľské prostredie zabezpečenia na úrovni riadkov.

Snímka obrazovky znázorňujúca rozbaľovací zoznam Teraz sa zobrazuje ako konkrétna osoba.

Otestujte iné zostavy pripojené k sémantickému modelu výberom položky Zobrazenie v hlavičke stránky. Môžete testovať iba zostavy, ktoré sa nachádzajú v tom istom pracovnom priestore ako váš sémantický model.

Snímka obrazovky zobrazujúca zobrazenie s cieľom vybrať inú zostavu na testovanie.

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

Poznámka

Funkcia Testovať ako rolu nefunguje v modeloch DirectQuery s povoleným jediným prihlásením (SSO). Okrem toho nie všetky aspekty zostavy je možné overiť v funkcii Testovať ako rolu vrátane vizualizácií funkcie Q&A, vizualizácií Rýchle prehľady a Copilot.

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

Vo svojej množine údajov môžete využiť parametre username() alebo userprincipalname() funkcie DAX. Môžete ich použiť v rámci výrazov v aplikácii Power BI Desktop. Keď model publikujete, použije sa v rámci služba Power BI.

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

V služba Power BI 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 službe Power BI

Ak publikujete zostavu aplikácie Power BI Desktop do pracovného priestoru v služba Power BI, roly zabezpečenia na úrovni riadkov sa použijú na členov, ktorí majú v pracovnom priestore priradenú rolu Čitateľ. Aj v prípade, že diváci majú k sémantickému modelu povolenia na vytváranie, zabezpečenie na úrovni riadkov sa stále používa. Ak napríklad používatelia s povoleniami na vytváranie používajú funkciu Analyzovať v Exceli, ich zobrazenie údajov je obmedzené zabezpečením na úrovni riadkov. Členovia pracovného priestoru s priradeným správcom, členom alebo prispievateľom majú povolenie na úpravu pre sémantický model, a preto sa na nich zabezpečenie na úrovni riadkov nevzťahuje. Ak chcete, aby sa zabezpečenie na úrovni riadkov vzťahovalo na ľudí v pracovnom priestore, môžete im priradiť len rolu Čitateľ . Prečítajte si viac o rolách v pracovných priestoroch.

Dôležité informácie a obmedzenia

Aktuálne obmedzenia pre zabezpečenie na úrovni riadkov v cloudových modeloch si môžete pozrieť tu:

  • Ak ste už predtým definovali roly a pravidlá v služba Power BI, musíte ich znovu vytvoriť v aplikácii Power BI Desktop.
  • Zabezpečenie na úrovni riadkov môžete definovať len pre sémantické modely vytvorené pomocou aplikácie Power BI Desktop. Ak chcete povoliť zabezpečenie na úrovni riadkov pre sémantické modely vytvorené v Exceli, musíte súbory najprv konvertovať na súbory aplikácie Power BI Desktop (PBIX). Získajte ďalšie informácie.
  • Objekty služby nie je možné pridať do roly zabezpečenia na úrovni riadkov. Zabezpečenie na úrovni riadkov sa preto nepoužije na aplikácie, ktoré používajú objekt služby ako konečnú efektívnu identitu.
  • Podporované je len importovanie a pripojenia DirectQuery. Dynamické pripojenia k službe Analysis Services sa spracovávajú v lokálnom modeli.
  • Funkcia Testovať ako rolu alebo Zobraziť ako rolu nefunguje v modeloch DirectQuery s povoleným jediným prihlásením (SSO).
  • Funkcia Otestovať ako rolu alebo zobraziť ako rolu zobrazuje iba zostavy zo sémantických modelov pracovného priestoru.
  • Funkcia Testovať ako rolu alebo Zobraziť ako rolu nefunguje v stránkovaných zostavách.

Majte na pamäti, že ak zostava služby Power BI odkazuje na riadok s nakonfigurovaným zabezpečením na úrovni riadkov, potom sa zobrazí rovnaká správa ako pre odstránené alebo neexistujúcie pole. Pre týchto používateľov to vyzerá tak, že zostava je nefunkčná.

Najčastejšie otázky

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

Otázka: Môžem vytvoriť tieto roly pre zdroje údajov v službe Analysis Services?
Odpoveď: Áno, ak ste importovali údaje do aplikácie Power BI Desktop. Ak používate dynamické pripojenie, nemôžete v služba Power BI nakonfigurovať zabezpečenie na úrovni riadkov. Zabezpečenie na úrovni riadkov môžete definovať lokálne v modeli Analysis Services.

Otázka: Môžem používať zabezpečenie na úrovni riadkov na obmedzenie 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 danom riadku všetky stĺpce údajov. Ak chcete obmedziť prístup k stĺpcom a metaúdajom stĺpcov, zvážte použitie zabezpečenia na úrovni objektu.

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 roly SQL Servera alebo roly SAP BW). Aký je vzťah medzi týmito rolami a zabezpečením na úrovni riadkov?
Odpoveď: Odpoveď závisí od toho, či importujete údaje alebo používate DirectQuery. Ak importujete údaje do množiny údajov služby Power BI, roly zabezpečenia v zdroji údajov sa nepoužívajú. V tomto prípade by ste mali definovať zabezpečenie na úrovni riadkov na vynútenie pravidiel zabezpečenia pre používateľov, ktorí sa pripájajú v službe Power BI. Ak používate Režim DirectQuery, použijú 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.

Otázka: Môže používateľ patriť do viac ako jednej roly?
Odpoveď: Používateľ môže patriť do viacerých rolí a roly sú s pripočítané. Napríklad, ak používateľ patrí k rolám Predaj aj Marketing, môže zobraziť údaje pre obe tieto roly.

Máte nejaké otázky? Skúste sa spýtať Komunita Power BI návrhy? Prispejte nápadmi na zlepšenie služby Power BI