Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Tento dokument obsahuje podrobný průvodce fungováním modelu řízení přístupu k zabezpečení OneLake. Obsahuje podrobnosti o tom, jak jsou role strukturované, jak se vztahují na data a jaká je integrace s jinými strukturami v rámci Fabric.
Role zabezpečení OneLake
Zabezpečení OneLake používá model řízení přístupu na základě role (RBAC) ke správě přístupu k datům v OneLake. Každá role se skládá z několika klíčových komponent.
- Typ: Bez ohledu na to, jestli role udělí přístup (GRANT) nebo odebere přístup (ODEPŘÍT). Podporují se jenom role typu GRANT.
- Povolení: Konkrétní akce nebo akce, které jsou uděleny nebo odepřeny.
- Rozsah: Objekty OneLake, které mají oprávnění. Objekty jsou tabulky, složky nebo schémata.
- Členové: Jakákoli identita Microsoft Entra, která je přiřazená k roli, jako jsou uživatelé, skupiny nebo identity bez uživatelů. Tato role se uděluje všem členům skupiny Microsoft Entra.
Přiřazením člena k roli pak tento uživatel podléhá přidruženým oprávněním k oboru této role. Vzhledem k tomu, že zabezpečení OneLake používá model odepření ve výchozím nastavení, všichni uživatelé nemají žádný přístup k datům, pokud jim není explicitně udělen rolí zabezpečení OneLake.
Oprávnění a podporované položky
Role zabezpečení OneLake podporují následující oprávnění:
- Číst: Udělí uživateli možnost číst data z tabulky a zobrazit přidružená metadata tabulek a sloupců. Z hlediska SQL je toto oprávnění ekvivalentní VIEW_DEFINITION i select. Další informace najdete v tématu Zabezpečení metadat.
- ReadWrite: Udělí uživateli možnost číst a zapisovat data z tabulky nebo složky a zobrazit přidružená metadata tabulek a sloupců. Pokud jde o SQL, toto oprávnění je ekvivalentní ALTER, DROP, UPDATE a INSERT. Další informace naleznete v tématu Oprávnění ReadWrite.
Zabezpečení OneLake umožňuje uživatelům definovat role přístupu k datům pouze pro následující položky infrastruktury.
| Textilní položka | Podporovaná oprávnění |
|---|---|
| Dům u jezera | Čtení, Čtení a zápis |
| Zrcadlený katalog Azure Databricks | Přečtěte |
| Zrcadlené databáze | Přečtěte |
| Zrcadlové katalogy | Přečtěte |
Oprávnění zabezpečení a pracovního prostoru OneLake
Oprávnění pracovního prostoru jsou první hranicí zabezpečení pro data v rámci OneLake. Každý pracovní prostor představuje jednu doménu nebo oblast projektu, kde týmy můžou spolupracovat na datech. Zabezpečení v pracovním prostoru spravujete prostřednictvím rolí pracovního prostoru Fabric. Další informace o řízení přístupu na základě rolí v rámci služby Fabric (RBAC): Role pracovního prostoru
Role pracoviště Fabric udělují oprávnění, která platí pro všechny položky v pracovním prostoru. Následující tabulka popisuje základní oprávnění povolená rolemi pracovního prostoru.
| Povolení | Administrátor | Člen | Přispěvatel | Prohlížející |
|---|---|---|---|---|
| Zobrazení souborů ve OneLake | Vždy* Ano | Vždy* Ano | Vždy* Ano | Ve výchozím nastavení ne. K udělení přístupu použijte zabezpečení OneLake. |
| Zápis souborů ve OneLake | Vždy* Ano | Vždy* Ano | Vždy* Ano | Ve výchozím nastavení ne. K udělení přístupu použijte zabezpečení OneLake. |
| Může upravovat role zabezpečení OneLake | Vždy* Ano | Vždy* Ano | Ne | Ne |
*Vzhledem k tomu, že role správce pracovního prostoru, člen a přispěvatel automaticky udělují oprávnění k zápisu do OneLake, mají přednost před jakýmikoliv oprávněními ke čtení zabezpečení OneLake.
Role v pracovním prostoru řídí přístup k datům v řídicí rovině, tedy interakce související s vytvářením a správou položek a oprávnění ve Fabricu. Kromě toho role pracovního prostoru také poskytují výchozí úrovně přístupu k datovým položkám pomocí výchozích rolí zabezpečení OneLake. (Mějte na paměti, že výchozí role platí jenom pro čtenáře, protože správce, člen a přispěvatel mají zvýšený přístup prostřednictvím oprávnění k zápisu). Výchozí role je normální role zabezpečení OneLake, která se vytvoří automaticky s každou novou položkou. Poskytuje uživatelům s určitým pracovním prostorem nebo položkou oprávnění výchozí úroveň přístupu k datům v této položce. Například položky lakehouse mají roli DefaultReader, která uživatelům s oprávněním ReadAll umožňuje zobrazit data v lakehouse. Tím se zajistí, že uživatelé, kteří přistupují k nově vytvořené položce, mají základní úroveň přístupu. Všechny výchozí role používají funkci virtualizace členů, aby členové této role mohli být všichni uživatelé v daném pracovním prostoru s požadovaným oprávněním. Například všichni uživatelé s oprávněním ReadAll pro lakehouse. Následující tabulka ukazuje, jaké jsou standardní výchozí role. Položky můžou mít specializované výchozí role, které platí jenom pro daný typ položky.
| Textilní položka | Název role | Povolení | Zahrnuté složky | Přidělení členové |
|---|---|---|---|---|
| Dům u jezera | DefaultReader |
Přečtěte | Všechny složky v části Tables/ a Files/ |
Všichni uživatelé s oprávněním ReadAll |
| Dům u jezera | DefaultReadWriter |
Přečtěte | Všechny složky | Všichni uživatelé s oprávněním k zápisu |
| Zrcadlený katalog Azure Databricks | DefaultReader |
Přečtěte | Všechny složky v části Tables/ a Files/ |
Všichni uživatelé s oprávněním ke čtení |
| Zrcadlová databáze | DefaultReader |
Přečtěte | Všechny složky v části Tables/ a Files/ |
Všichni uživatelé s oprávněním ReadAll |
Poznámka:
Pokud chcete omezit přístup na konkrétní uživatele nebo konkrétní složky, upravte výchozí roli nebo ji odeberte a vytvořte novou vlastní roli.
Zabezpečení OneLake a oprávnění k položkám
V rámci pracovního prostoru můžou mít položky Fabric nakonfigurovaná oprávnění odděleně od rolí pracovního prostoru. Oprávnění můžete nakonfigurovat buď sdílením položky, nebo správou oprávnění položky. Následující oprávnění určují schopnost uživatele provádět akce u položky v Fabric. Další informace o sdílení položek najdete v tématu Jak funguje sdílení Lakehouse.
| Povolení | Může zobrazit soubory ve OneLake? | Může zapisovat soubory ve OneLake? | Lze číst data prostřednictvím koncového bodu SQL Analytics? |
|---|---|---|---|
| Přečtěte | Ve výchozím nastavení ne. Použijte zabezpečení OneLake k udělení přístupu. | Ne | Ne |
| Číst vše | Ano prostřednictvím role DefaultReader. K omezení přístupu použijte zabezpečení OneLake. | Ne | Ne* |
| Napiš | Ano | Ano | Ano |
| Spuštění, opětovné sdílení, ZobrazitVýstup, ZobrazitLogy | Není k dispozici – nedá se udělit samostatně | Není k dispozici – nedá se udělit samostatně | Není k dispozici – nedá se udělit samostatně |
*Závisí na režimu koncového bodu analýzy SQL.
Vytvoření rolí
Role zabezpečení OneLake můžete definovat a spravovat prostřednictvím uživatelského rozhraní pro správu rolí zabezpečení OneLake vaší položky.
Další informace najdete v Začínáme s rolemi přístupu k datům.
Stroj a uživatelský přístup k datům
Přístup k datům k OneLake probíhá jedním ze dvou způsobů:
- Prostřednictvím dotazovacího modulu, včetně modulů Fabric a autorizovaných modulů třetích stran
- Prostřednictvím uživatelského přístupu (dotazy z neautorizovaných externích vyhledávačů se považují za uživatelský přístup)
Zabezpečení OneLake zajišťuje, že data jsou vždy zabezpečená. Protože některé funkce zabezpečení OneLake, jako je zabezpečení na úrovni řádků a sloupců, nejsou operacemi na úrovni úložiště podporované, není možné povolit všechny typy přístupu k zabezpečeným datům na úrovni řádků nebo sloupců. To zaručuje, že uživatelé neuvidí řádky nebo sloupce, ke kterým nemají oprávnění. Enginy Fabric umožňují použít filtrování zabezpečení na úrovni řádků a sloupců na datové dotazy. To znamená, že když uživatel dotazuje data v lakehouse nebo jiné položce se zabezpečením OneLake RLS nebo CLS, výsledky, které uživatel uvidí, budou mít odstraněny skryté řádky a sloupce. Aby měl uživatel přístup k datům ve OneLake s RLS nebo CLS, je dotaz zablokován, pokud mu není povoleno vidět všechny řádky nebo sloupce v této tabulce.
Následující tabulka popisuje, které moduly podporují filtrování RLS a CLS.
| Motor | Filtrování RLS/CLS | Stav |
|---|---|---|
| Dům u jezera | Ano | GA |
| Poznámkové bloky Sparku | Ano | GA |
| Koncový bod SQL Analytics v režimu přístupu k identitám uživatele | Ano | GA |
| Sémantické modely využívající Direct Lake v režimu OneLake | Ano | GA |
| Eventhouse | Pouze RLS | Veřejná ukázka |
| Autorizované moduly třetích stran (prostřednictvím rozhraní API autorizovaného modulu OneLake) | Ano (při implementaci motorem) | Veřejná ukázka |
Autorizované moduly třetích stran
Zabezpečení OneLake podporuje vynucení autorizovanými třetími stranami prostřednictvím schváleného modelu enginu. Externí moduly se můžou zaregistrovat jako autorizované moduly a načítat definice zabezpečení a předem předpočítat efektivní přístup prostřednictvím rozhraní API OneLake. Tyto moduly vynucují oprávnění tabulek, zabezpečení na úrovni řádků a CLS v době dotazu ve své vlastní výpočetní vrstvě. OneLake zůstává jediným spolehlivým zdrojem pro řízení přístupu, zatímco stroje zachovají plnou kontrolu nad optimalizací a prováděním dotazů.
Další informace o integraci modulu se zabezpečením OneLake najdete v přehledu integrace zabezpečení OneLake.
Podrobnosti o modelu řízení přístupu k zabezpečení OneLake
Tato část obsahuje podrobnosti o tom, jak role zabezpečení OneLake udělují přístup konkrétním oborům, jak tento přístup funguje a jak se řeší přístup napříč několika rolemi a typy přístupu.
Zabezpečení na úrovni tabulky
Všechny tabulky OneLake jsou reprezentovány složkami v jezeře, ale ne všechny složky v jezeře jsou tabulky z pohledu zabezpečení OneLake a dotazovacích modulů v Fabric. Aby byla považována za platnou tabulku, musí být splněny následující podmínky:
- Složka existuje v tabulkách nebo adresáři položky. U položek s povoleným schématem musí být složka také v platné složce schématu.
- Složka obsahuje složku _delta_log s odpovídajícími soubory JSON pro metadata tabulky.
- Složka neobsahuje žádné podřízené klávesové zkratky.
Všechny tabulky, které nesplňují tato kritéria, budou mít odepřený přístup, pokud je u nich nakonfigurované zabezpečení na úrovni tabulky.
Zabezpečení metadat
Oprávnění ke čtení zabezpečení OneLake uděluje úplný přístup k datům a metadatům v tabulce. Pro uživatele bez přístupu k tabulce se data nikdy nezpřístupní. To platí také pro zabezpečení na úrovni sloupců a schopnost uživatele vidět nebo nevidět sloupec v této tabulce. Zabezpečení OneLake ale nezaručuje, že metadata pro tabulku nebudou přístupná a některé chybové zprávy a situace mohou zobrazovat názvy sloupců.
Dědičnost oprávnění
Oprávnění zabezpečení OneLake se u všech daných složek vždy dědí do celé hierarchie souborů a podsložek složky.
Představte si například následující hierarchii jezera v OneLake:
Tables/
──── (empty folder)
Files/
────folder1
│ │ file11.txt
│ │
│ └───subfolder11
│ │ file1111.txt
| │
│ └───subfolder111
| │ file1111.txt
│
└───folder2
│ file21.txt
Vytvoříte dvě role pro tento datový sklad.
Role1 uděluje oprávnění ke čtení složky1 a Role2 uděluje oprávnění ke čtení ke složce2.
Pro danou hierarchii se oprávnění zabezpečení OneLake pro Role1 a Role2 dědí následovně:
Role1: Přečíst složku1
│ │ file11.txt │ │ │ └───subfolder11 │ │ file1111.txt | │ │ └───subfolder111 | │ file1111.txtRole2: Číst složku2
│ file21.txt
Procházení a seznamování v rámci zabezpečení OneLake
Zabezpečení OneLake poskytuje automatické procházení nadřazených položek, aby bylo zajištěno, že se data snadno zjišťují. Udělení oprávnění ke čtení uživateli pro podsložku11 poskytuje uživateli možnost zobrazit obsah a procházet nadřazený adresář složky1. Tato funkce je podobná oprávněním ke složce Systému Windows, kde poskytnutí přístupu k podsložce poskytuje zjišťování a procházení nadřazených adresářů. Seznam a procházení udělené rodiči se nevztahuje na jiné položky mimo přímé rodiče, což zajišťuje, že ostatní složky zůstanou zabezpečené.
Například zvažte následující hierarchii datového skladu (lakehouse) v OneLake.
Tables/
──── (empty folder)
Files/
────folder1
│ │ file11.txt
│ │
│ └───subfolder11
│ │ file111.txt
| │
│ └───subfolder111
| │ file1111.txt
│
└───folder2
│ file21.txt
Pro danou hierarchii poskytuje oprávnění zabezpečení OneLake pro roli1 následující přístup. Přístup k file11.txt není viditelný, protože není rodičem subfolderu11. Podobně pro Role2 se file111.txt také nezobrazuje.
Role1: Čtení podsložky 11
Files/ ────folder1 │ │ │ └───subfolder11 │ │ file111.txt | │ │ └───subfolder111 | │ file1111.txtRole2: Čtení podsložky 111
Files/ ────folder1 │ │ │ └───subfolder11 | │ │ └───subfolder111 | │ file1111.txt
U klávesových zkratek se chování při zobrazení mírně liší. Klávesové zkratky externích zdrojů dat se chovají stejně jako složky, ale klávesové zkratky jiných umístění OneLake mají specializované chování. Cílová oprávnění odkazu určují přístup ke zkratce OneLake. Při výpisu zástupců neprobíhá žádné volání ke kontrole cílového přístupu. V důsledku toho se při výpisu adresáře vrátí všechny interní klávesové zkratky bez ohledu na přístup uživatele k cíli. Když se uživatel pokusí otevřít zástupce, dojde k vyhodnocení kontroly přístupu a uživatel uvidí jenom data, ke kterým mají požadovaná oprávnění k zobrazení. Další informace o klávesových zkratkách najdete v části zabezpečení klávesové zkratky.
Zvažte následující hierarchii složek, která obsahuje zástupce.
Files/
────folder1
│
└───shortcut2
|
└───shortcut3
Role1: Přečíst složku1
Files/ ────folder1 │ └───shortcut2 | └───shortcut3Role2: Nejsou definována žádná oprávnění
Files/ │ └───shortcut2 | └───shortcut3
Zabezpečení na úrovni řádků
Zabezpečení OneLake umožňuje uživatelům určit zabezpečení na úrovni řádků tím, že zapíše predikáty SQL, aby omezila, jaká data se uživateli zobrazují. RLS funguje zobrazením řádků, ve kterých se predikát vyhodnotí jako pravda. Další informace najdete v zabezpečení na úrovni řádků.
Zabezpečení na úrovni řádků vyhodnocuje řetězcová data bez rozlišování velikosti písmen pomocí následující kolace pro řazení a porovnávání: Latin1_General_100_CI_AS_KS_WS_SC_UTF8
Při použití zabezpečení na úrovni řádků se ujistěte, že jsou příkazy RLS čisté a snadno pochopitelné. Použijte celočíselné sloupce pro řazení a operace větší a menší než. Vyhněte se ekvivalencům řetězců, pokud neznáte formát vstupních dat, zejména ve vztahu ke znakům Unicode nebo citlivosti zvýraznění.
Zabezpečení na úrovni sloupců
Zabezpečení OneLake podporuje omezení přístupu ke sloupcům odebráním (skrytí) přístupu uživatele ke sloupci. Skrytý sloupec se považuje za bez přiřazených oprávnění, což vede k výchozí zásadě bez přístupu. Skryté sloupce nebudou viditelné pro uživatele a dotazy na data obsahující skryté sloupce nevrací žádná data pro daný sloupec. Jak je uvedeno v zabezpečení metadat , existují určité případy, kdy mohou být metadata sloupce stále viditelná.
Zabezpečení na úrovni sloupců se také řídí přísnějším chováním koncového bodu SQL tím, že pracuje prostřednictvím sémantického odepření. Odepření na sloupci v koncovém bodu SQL zajišťuje, že je veškerý přístup ke sloupci zablokován, i když by kombinace více rolí poskytla přístup ke sloupci. V důsledku toho CLS v koncovém bodu SQL funguje pomocí průniku mezi všemi rolemi, jejichž členem je uživatel, místo chování sjednocení pro všechny ostatní typy oprávnění. Další informace o kombinování rolí zabezpečení najdete v části Vyhodnocení více rolí zabezpečení OneLake .
Oprávnění pro čtení a zápis
Oprávnění ReadWrite umožňuje uživatelům jen pro čtení provádět operace zápisu do konkrétních položek. Oprávnění k čtení a zápisu platí pouze pro čtenáře nebo uživatele s oprávněním číst u položky. Přiřazení přístupu ReadWrite správci, členu nebo přispěvateli nemá žádný vliv, protože tyto role už toto oprávnění mají implicitně.
Přístup readWrite umožňuje uživatelům provádět operace zápisu prostřednictvím poznámkových bloků Sparku, Průzkumníka souborů OneLake nebo rozhraní ONELake API.
Oprávnění ReadWrite funguje následujícími způsoby:
- Oprávnění ReadWrite zahrnuje všechna oprávnění udělená oprávněním ke čtení.
- Uživatelé s oprávněními ReadWrite k objektu mohou provádět operace zápisu u daného objektu včetně. To znamená, že všechny operace lze provést také u samotného objektu.
- ReadWrite umožňuje následující akce:
- Vytvoření nové složky nebo tabulky
- Odstranění složky nebo tabulky
- Přejmenování složky nebo tabulky
- Nahrání nebo úprava souboru
- Vytvořte zástupce
- Odstranění zástupce
- Přejmenujte zástupce
- Role zabezpečení OneLake s přístupem ReadWrite nemohou obsahovat omezení RLS nebo CLS.
- Vzhledem k tomu, že Fabric podporuje pouze zápisy pomocí jednoho mechanismu, mohou uživatelé s oprávněním k čtení a zápisu na objekt zapisovat do těchto dat pouze prostřednictvím OneLake. Operace čtení se však budou vynucovat konzistentně prostřednictvím všech dotazovacích modulů.
Zkratky
Přehled zkratek
Zabezpečení OneLake se integruje s klávesovými zkratkami ve OneLake, aby bylo možné snadno zabezpečit data uvnitř i mimo OneLake. Klávesové zkratky mají dva hlavní režimy ověřování:
- Průchozí zkratky (SSO): Přihlašovací údaje uživatele, který se dotazuje, jsou vyhodnoceny ve vztahu k cíli zkratky, aby se určilo, jaká data mohou být zobrazena.
- Delegované klávesové zkratky: Zástupce používá pro přístup k cíli pevné přihlašovací údaje a uživatel, který provádí dotazování, je vyhodnocován proti zabezpečení OneLake před kontrolou přístupu ke zdroji pomocí delegovaných přihlašovacích údajů.
Kromě toho se při vytváření zástupců ve OneLake vyhodnocují oprávnění zabezpečení OneLake. Přečtěte si o oprávněních zástupce v dokumentu bezpečnosti zástupce.
Zabezpečení OneLake v předávacích klávesových zkratkách
Zabezpečení nastavené ve složce OneLake se vždy vztahuje na všechny interní zkratky, aby omezilo přístup k cílové cestě zkratky. Když uživatel přistupuje k datům prostřednictvím zástupce k jinému umístění OneLake, identita volajícího uživatele se použije k autorizaci přístupu k datům v cílové cestě. V důsledku toho musí mít tento uživatel oprávnění zabezpečení OneLake v cílovém umístění ke čtení dat.
Důležité
Při přístupu ke zkratkám prostřednictvím sémantických modelů Power BI využívajících Direct Lake přes SQL nebo enginů T-SQL v režimu delegované identity se identita volajícího uživatele nepředává do cíle zkratky. Místo toho je předána identita vlastníka volající položky a přístup je delegován volajícímu uživateli. Pokud chcete tento problém vyřešit, použijte Power BI sémantické modely v režimu Direct Lake přes OneLake nebo T-SQL v režimu identit uživatele.
Definování oprávnění zabezpečení OneLake pro interní zástupce není povolené a zabezpečení musí být definováno v cílové složce umístěné v cílové položce. Cílová položka musí být typ položky, který podporuje role zabezpečení OneLake. Pokud cílová položka nepodporuje zabezpečení OneLake, vyhodnotí se přístup uživatele na základě toho, jestli má oprávnění Fabric ReadAll pro cílovou položku. Uživatelé nepotřebují oprávnění ke čtení Fabric k položce, aby k ní měli přístup prostřednictvím zástupce.
Zabezpečení OneLake v delegovaných zkratkách
OneLake podporuje definování oprávnění pro zástupce, jako jsou ADLS, S3 a zástupce Dataverse. V tomto případě se oprávnění použijí navíc k delegovanému modelu autorizace, který je pro tento typ zástupce povolený.
Předpokládejme, že uživatel1 vytvoří zástupce S3 v lakehouse odkazující na složku v bucketu AWS S3. Uživatel 2 se pak pokouší získat přístup k datům v této zkratce.
| Autorizuje připojení S3 přístup pro delegovaného uživatele1? | Autorizuje zabezpečení OneLake přístup pro žádajícího uživatele2? | Výsledek: Může uživatel2 mít přístup k datům v S3 Shortcut? |
|---|---|---|
| Ano | Ano | Ano |
| Ne | Ne | Ne |
| Ne | Ano | Ne |
| Ano | Ne | Ne |
Zabezpečovací oprávnění OneLake mohou být definována buď pro celý rozsah zástupce, nebo pro vybrané podsložky. Oprávnění nastavená ve složce se dědí rekurzivně ve všech podsložkách, i když je podsložka uvnitř zástupce. Nastavené zabezpečení u externího zástupce může být zaměřeno na udělení přístupu buď k celému zástupci, nebo k jakékoli dílčí cestě uvnitř zástupce. Další interní zástupce odkazující na externí zástupce stále vyžaduje, aby měl uživatel přístup k původnímu externímu zástupci.
Na rozdíl od jiných typů přístupu v zabezpečení OneLake uživatel, který přistupuje k externímu zástupci, potřebuje oprávnění ke čtení Fabric u datové položky, kde se externí zástupce nachází. To je nezbytné pro bezpečné řešení připojení k externímu systému.
Další informace o zkratkách S3, ADLS a Dataverse najdete v zkratkách OneLake.
Vyhodnocení několika rolí zabezpečení OneLake
Uživatelé můžou být členy několika různých rolí zabezpečení OneLake, přičemž každý z nich poskytuje vlastní přístup k datům. Kombinace těchto rolí se nazývá "efektivní role" a uživatel uvidí při přístupu k datům v OneLake. Role se kombinují v zabezpečení OneLake pomocí modelu UNION nebo nejméně omezujícího modelu. To znamená, že pokud role1 poskytuje přístup k Tabulce A a role2 poskytuje přístup k TabulceB, uživatel bude moct zobrazit tabulku TableA i TableB.
Role zabezpečení OneLake také obsahují zabezpečení na úrovni řádků a sloupců, které omezuje přístup k řádkům a sloupcům tabulky. Každá zásada zabezpečení na úrovni řádků (RLS) a na úrovni sloupců (CLS) existuje v rámci role a omezuje přístup k datům pro všechny uživatele této role. Například pokud Role1 poskytuje přístup k Table1, ale má zabezpečení na úrovni řádků (RLS) na Table1 a zobrazuje pouze některé sloupce z Table1, pak bude efektivní role pro Role1 podmnožinami RLS a CLS z Table1. Dá se vyjádřit jako (R1ols n R1cls n R1rls), kde n je PRŮNIK každé komponenty v roli.
Při práci s více rolemi se zabezpečení na úrovni řádků (RLS) a zabezpečení na úrovni sloupců (CLS) kombinují s použitím sémantiky UNION v odpovídajících tabulkách. CLS je přímé sjednocení množin tabulek viditelných v jednotlivých rolích. RLS se kombinuje s predikáty pomocí operátoru "OR". Například WHERE city = 'Redmond' OR city = 'New York'.
Pokud chcete posoudit více rolí, z nichž každá má RLS nebo CLS, každá role je nejprve vyhodnocena na základě přístupu definovaného samotnou rolí. To znamená vyhodnocení průniku zabezpečení na úrovni objektů, řádků a sloupců. Každá vyhodnocená role se pak zkombinuje se všemi ostatními rolemi, jejichž je uživatel členem, prostřednictvím operace UNION. Výstup je efektivní role pro daného uživatele. Dá se vyjádřit takto:
( (R1ols n R1cls n R1rls) u (R2ols n R2cls n R2rls) )
Nakonec každá klávesová zkratka v jezeře generuje sadu odvozených rolí, které se používají k šíření oprávnění cíle zástupce k dotazované položce. Odvozené role fungují podobným způsobem jako neinferované role, s tím rozdílem, že jsou nejprve vyřešeny na místě v cíli zástupce, než se zkombinují s rolemi v shortcut lakehouse. Tím se zajistí, že se přeruší veškeré dědění oprávnění v systému shortcut lakehouse a správně se vyhodnotí odvozené role. Logika úplné kombinace se pak dá vyjádřit takto:
( (R1ols n R1cls n R1rls) u (R2ols n R2cls n R2rls) ) n ( (R1'ols n R1'cls n R1'rls) u (R2'ols n R2'cls n R2'rls)) )
Kde jsou R1' a R2' odvozené role a R1 a R2 jsou zkratkové role lakehouse.
Důležité
Stejný uživatel ve dvou nebo více rolích s různými povolenými sloupci není podporován, pokud některá z rolí má také RLS příkaz. Například Role1 umožňuje sloupce c1 a c2 s RLS a Role2 sloupce c2 a c3.
Omezení zabezpečení OneLake
Pokud přiřadíte roli zabezpečení OneLake B2B uživateli typu host, musíte nakonfigurovat nastavení externí spolupráce pro B2B v Microsoft Entra Externí ID. Nastavení přístupu uživatelů hostů musí být nastaveno na uživatelé hosté mají stejný přístup jako členové (nejinkluzivnější).
Pokud v zabezpečení OneLake přidáte do role distribuční seznam, koncový bod analýz SQL nedokáže vyhodnotit členy tohoto seznamu, a proto nemůže vynucovat řízení přístupu. Výsledkem je, že se uživatelům zdá, že nejsou členy role, když přistupují ke koncovému bodu SQL Analytics. Direct Lake v sémantických modelech SQL podléhá tomuto omezení také.
Poznámkové bloky Spark vyžadují, aby verze prostředí byla 3.5 nebo vyšší a používalo se prostředí Fabric 1.3.
Náhled dat pro tabulky zabezpečené RLS a CLS se nepodporuje pro jezera bez schématu. Doporučujeme používat lakehouse s podporou schémat a zabezpečením OneLake.
Zabezpečení OneLake nefunguje se službou Azure Data Share ani Purview Data Share. Další informace najdete v tématu Azure Data Share.
Následující tabulka obsahuje omezení rolí přístupu k datům OneLake.
Scénář Omezení Maximální počet rolí zabezpečení OneLake na položku Fabric 250 rolí na položku1 Maximální počet členů na roli zabezpečení OneLake 500 uživatelů nebo skupin uživatelů na roli Maximální počet oprávnění na roli zabezpečení OneLake 500 oprávnění na roli
1 Můžete požádat o zvýšení počtu rolí na položku na 1 000. Pokud chcete požádat o navýšení, obraťte se na podporu Azure.[https://azure.microsoft.com/support/faq/]
Latence v zabezpečení OneLake
- Použití změn definic rolí trvá přibližně 5 minut.
- Provádění změn u skupiny uživatelů v bezpečnostní roli OneLake trvá přibližně hodinu, než OneLake použije oprávnění role u aktualizované skupiny uživatelů.
- Některé systémy Fabric mají vlastní vrstvu ukládání do mezipaměti, takže může být potřeba další hodina k aktualizaci přístupu ve všech systémech.