Omezení přístupu k objektům modelu Power BI

Dokončeno

Jako modelátor dat můžete zvážit omezení přístupu uživatelů k objektům modelu Power BI. Zabezpečení na úrovni objektů (OLS) může omezit přístup ke konkrétním tabulkám a sloupcům a jejich metadatům. OlS obvykle použijete k zabezpečení objektů, které ukládají citlivá data, jako jsou osobní údaje zaměstnanců.

Když Power BI vynucuje OLS, nejen omezuje přístup k tabulkám a sloupcům, ale může také zabezpečit metadata. Při zabezpečení metadat není možné načíst informace o zabezpečených tabulkách a sloupcích pomocí zobrazení dynamické správy (DMV).

Důležité

Tabulkové modely můžou skrýt tabulky a sloupce (a další objekty) pomocí perspektivy. Perspektiva definuje zobrazitelné podmnožina objektů modelu, které autorům sestav pomůžou poskytnout konkrétní zaměření. Perspektivy jsou určeny ke snížení složitosti modelu, což autorům sestav pomáhá najít zdroje, které jsou zajímavé. Perspektivy ale nejsou funkcí zabezpečení, protože nezabezpečují objekty. Uživatel může i nadále dotazovat tabulku nebo sloupec, i když pro ně není viditelný.

Představte si příklad ve společnosti Adventure Works. Tato organizace má tabulku dimenzí datového skladu s názvem DimEmployee. Tabulka obsahuje sloupce, které ukládají jméno zaměstnance, telefon, e-mailovou adresu a plat. Uživatelé obecné sestavy sice uvidí jméno zaměstnance a kontaktní údaje, ale nemůžou zobrazit hodnoty platu. Pouze vedoucí pracovníci lidských zdrojů mají povoleno zobrazit hodnoty platu. Proto modelátor dat použil OLS k udělení přístupu ke sloupci platu pouze konkrétním pracovníkům lidských zdrojů.

Snímek obrazovky znázorňující zobrazení diagramu modelu v tabulce Zaměstnanec, která obsahuje sloupec s omezeným platem

OLS je funkce zděděná ze služby Azure Analysis Services (AAS) a Služba Analysis Services serveru SQL (SSAS). Tato funkce je dostupná v Power BI Premium, aby poskytovala zpětnou kompatibilitu modelů migrovaných do Power BI. Z tohoto důvodu není možné v Power BI Desktopu úplně nastavit OLS.

Nastavení OLS

Pokud chcete nastavit OLS, začněte vytvořením rolí. Role v Power BI Desktopu můžete vytvářet stejným způsobem jako při nastavování zabezpečení na úrovni řádků. Dále musíte do rolí přidat pravidla OLS. Power BI Desktop tuto funkci nepodporuje, takže budete muset použít jiný přístup.

Pravidla OLS přidáte do modelu Power BI Desktopu pomocí koncového bodu XML for Analysis (XMLA). Koncové body XMLA jsou dostupné v Power BI Premium a poskytují přístup k modulu Analysis Services v služba Power BI. Koncový bod pro čtení a zápis podporuje správu datových sad, správu životního cyklu aplikací, pokročilé modelování dat a další. Rozhraní API s povoleným koncovým bodem XMLA můžete použít ke skriptování, jako je například jazyk TMSL (Tabular Model Scripting Language) nebo modul SqlServer PowerShellu. Nebo můžete použít klientský nástroj, jako je SSMS. Existují také možnosti nástrojů třetích stran, jako je tabulkový editor, což je opensourcový nástroj pro vytváření, údržbu a správu modelů.

Ve výchozím nastavení nejsou všechny tabulky a sloupce modelu omezené. Můžete je nastavit na None (Žádné ) nebo Read (Číst). Pokud je tato možnost nastavená na Hodnotu Žádná, uživatelé přidružení k této roli nemají přístup k objektu. Pokud je nastavena možnost Číst, můžou uživatelé přidružení k této roli přistupovat k objektu. Pokud omezujete konkrétní sloupce, ujistěte se, že tabulka není nastavená na Žádné.

Po přidání pravidel OLS můžete model publikovat do služba Power BI. Stejný postup použijte pro zabezpečení na úrovni řádků k mapování účtů a skupin zabezpečení na role.

Důležité informace

Když uživatel nemá v sestavě Power BI oprávnění pro přístup k tabulce nebo sloupci, zobrazí se mu chybová zpráva. Zpráva je informuje, že objekt neexistuje.

Snímek obrazovky ukazuje chybovou zprávu Power BI Desktopu, když se vizuál sestavy pokusí dotazovat omezený sloupec.

Pečlivě zvažte, jestli je OLS správným řešením pro váš projekt. Když uživatel otevře sestavu Power BI, která se dotazuje omezeného objektu (pro ně), může být chybová zpráva matoucí a výsledkem bude negativní prostředí. Vypadá to, že je sestava poškozená. Lepším přístupem může být vytvoření samostatné sady modelů nebo sestav pro různé požadavky příjemců sestav.

Omezení

Při implementaci OLS existují omezení.

RLS a OLS nemůžete kombinovat ve stejné roli. Pokud potřebujete použít zabezpečení na úrovni řádků a OLS ve stejném modelu, vytvořte samostatné role vyhrazené pro každý typ. Zabezpečení na úrovni tabulky také není možné nastavit, pokud přeruší řetěz relací. Pokud například existují relace mezi tabulkami A a B a B a C, nemůžete zabezpečit tabulku B. Pokud je tabulka B zabezpečená, dotaz na tabulku A nemůže přenášet relace mezi tabulkou A a B a B a C. V tomto případě můžete nastavit samostatnou relaci mezi tabulkami A a C.

Diagram znázorňuje příklad relace popsaný v předchozím odstavci.

Relace modelu, které odkazují na zabezpečený sloupec, ale budou fungovat, pokud tabulka sloupce není zabezpečená.

A konečně, i když není možné zabezpečit míry, míra, která odkazuje na zabezpečené objekty, je automaticky omezena.

Další informace naleznete v tématu Zabezpečení na úrovni objektů.