Koncepce zabezpečení v Microsoft Dataverse

Dataverse poskytuje bohatý model zabezpečení, který se přizpůsobuje mnoha obchodním scénářům. Model zabezpečení se vztahuje pouze na prostředí s databází Dataverse. Jako správce často spravujete uživatele, konfigurujete jejich nastavení zabezpečení a řešíte problémy s přístupem.

Zabezpečení založené na rolích

Dataverse používá zabezpečení založené na rolích ke seskupování oprávnění. Tyto role zabezpečení můžete přidružit přímo uživatelům nebo je přidružit k týmům Dataverse a obchodním jednotkám. Uživatelé pak mohou být přidruženi k týmu, takže všichni uživatelé, kteří jsou přidruženi k týmu, můžou tuto roli využít. Klíčový koncept zabezpečení Dataverse, který je třeba pochopit, je, že všechna udělovaná oprávnění jsou kumulativní, přičemž nejvíce převládá oprávnění přístupu. Pokud poskytujete široký přístup ke čtení na úrovni organizace všem záznamům kontaktů, nemůžete se vrátit a skrýt jeden záznam.

Organizační jednotky

Tip

Video symbol Podívejte se na následující video: Modernizace obchodních jednotek.

Obchodní jednotky a role zabezpečení určují efektivní zabezpečení uživatele. Obchodní jednotky definují hranice zabezpečení, které pomáhají spravovat uživatele a data, ke kterým mají přístup. Každá databáze Dataverse má jednu kořenovou obchodní jednotku.

Vytvořte podřízené organizační jednotky pro další segmentace uživatelů a dat. Každý uživatel v prostředí patří do organizační jednotky. I když obchodní jednotky můžou modelovat hierarchii organizace 1:1, častěji definují hranice, které podporují váš model zabezpečení.

Zvažte prostředí se třemi organizačními jednotkami. Woodgrove je kořenová obchodní jednotka a vždy zůstává na vrcholu. Podřízené obchodní jednotky A a B slouží uživatelům s odlišnými potřebami přístupu. Každému uživateli přiřaďte jednu z těchto organizačních jednotek. Obchodní jednotka uživatele vlastní záznamy, které uživatel vytvoří. Role zabezpečení uděluje přístup k záznamům v této organizační jednotce.

Hierarchická struktura přístupu k datům

Organizační struktura podobná stromové struktuře slouží k oddělení uživatelů a dat.

Přiřaďte uživatele k jedné ze tří organizačních jednotek a přidělte uživateli roli zabezpečení z této organizační jednotky. Obchodní jednotka uživatele vlastní záznamy, které uživatel vytvoří. Nakonfigurujte roli zabezpečení tak, aby udělil přístup k záznamům v této organizační jednotce.

Uživatel A patří do divize A a má roli zabezpečení Y z divize A. Tato role uděluje uživateli přístup k záznamům Kontakt č. 1 a Kontakt č. 2. Uživatel B patří do divize B a nemá přístup k záznamům kontaktů oddělení A, ale má přístup k záznamu Kontakt č. 3.

Diagram znázorňující hierarchický přístup k záznamům kontaktů podle organizační jednotky

Maticová struktura přístupu k datům (modernizované obchodní jednotky)

Organizační struktura podobná stromové struktuře slouží k oddělení dat a zároveň uživatelům poskytuje přístup k datům z libovolné obchodní jednotky bez ohledu na jejich přiřazenou organizační jednotku.

Přiřaďte uživatele k jedné ze tří organizačních jednotek. Pro každou organizační jednotku, jejíž data uživatel potřebuje k přístupu, přiřaďte uživateli roli zabezpečení z této organizační jednotky. Při vytváření záznamu může uživatel vybrat vlastní organizační jednotku.

Uživatel A může patřit do libovolné obchodní jednotky, včetně kořenové obchodní jednotky. Role zabezpečení Y z divize A uděluje uživateli přístup k záznamům Contact #1 a Contact #2. Bezpečnostní role Y z divize B uděluje uživateli A přístup k záznamu Kontakt č. 3.

Diagram znázorňující maticový přístup k záznamům kontaktů napříč organizačními jednotkami

Povolení struktury přístupu k datům matice

Poznámka:

Před povolením této funkce publikujte všechna vlastní nastavení, aby podporovala každou novou tabulku. Pokud nepublikované tabulky po zapnutí funkce nefungují, použijte nástroj OrgDBOrgSettings pro Microsoft Dynamics CRM k nastavení RecomputeOwnershipAcrossBusinessUnits na true. Toto nastavení umožňuje dataverse nastavit a aktualizovat pole Vlastnící organizační jednotka .

  1. Přihlaste se do centra pro správu Power Platform jako správce (správce Dynamics 365 nebo správce Microsoft Power Platform).
  2. V podokně navigace vyberte položku Spravovat.
  3. V podokně Spravovat vyberte možnost Prostředí a poté vyberte prostředí, pro které chcete tuto funkci povolit.
  4. Vyberte Nastavení>Produkt>Funkce.
  5. Zapněte přepínač Vlastnictví záznamů napříč obchodními jednotkami.
  6. Zvolte Uložit.

Po zapnutí této funkce vyberte obchodní jednotku , když uživateli přiřadíte roli zabezpečení. Tento výběr umožňuje přiřadit role zabezpečení uživatelů z různých organizačních jednotek. Ke spouštění aplikací řízených modelem uživatel také potřebuje roli zabezpečení ze své přiřazené obchodní jednotky s oprávněními k uživatelským nastavením. Pro požadovaná oprávnění se podívejte na roli zabezpečení základního uživatele .

Uživatele můžete přiřadit jako vlastníka záznamu v libovolné business unit, aniž byste mu museli přiřadit roli zabezpečení v business unit, která záznam vlastní, pokud má uživatel roli zabezpečení, která má oprávnění ke čtení tabulky záznamu. Viz Vlastnictví záznamů v modernizovaných obchodních jednotkách.

Poznámka:

Tento přepínač funkcí je uložen v nastavení EnableOwnershipAcrossBusinessUnits a lze ho také nastavit pomocí nástroje OrgDBOrgSettings pro Microsoft Dynamics CRM.

Přiřazení organizační jednotky ke skupině zabezpečení Microsoft Entra

Skupinu zabezpečení Microsoft Entra můžete použít pro mapování vaší obchodní jednotky pro zjednodušení správy uživatelů a přidělování rolí.

Vytvoření skupiny zabezpečení Microsoft Entra pro každou organizační jednotku a přiřazení příslušné role zabezpečení organizační jednotky každému týmu skupiny.

Pro každou organizační jednotku vytvořte skupinu zabezpečení Microsoft Entra.

Pro každou organizační jednotku vytvořte skupinu zabezpečení Microsoft Entra. Vytvořte tým skupiny Dataverse pro každou skupinu zabezpečení Microsoft Entra. Každému týmu skupiny Dataverse přiřaďte příslušnou roli zabezpečení z organizační jednotky. Když uživatel přistupuje k prostředí, Dataverse vytvoří uživatele v kořenové obchodní jednotce. Uživatelský tým a tým skupiny Dataverse můžou zůstat v kořenové obchodní jednotce. Jejich role zabezpečení udělují přístup pouze k datům v odpovídajících organizačních jednotkách.

Přidejte uživatele do příslušné skupiny zabezpečení Microsoft Entra, aby jim udělil přístup k organizační jednotce. Uživatelé mohou okamžitě spustit aplikaci a přistupovat k jejím zdrojům/datům.

Pro přístup k maticovým datům přidejte uživatele do skupin zabezpečení Microsoft Entra, které odpovídají obchodním jednotkám, jejichž data potřebují.

Vlastnící organizační jednotka

Každý záznam má sloupec Vlastnící organizační jednotku , který identifikuje organizační jednotku, která záznam vlastní. Ve výchozím nastavení používá sloupec organizační jednotku uživatele. Uživatelé můžou hodnotu změnit jenom v případech, kdy je funkce zapnutá.

Poznámka:

Když změníte, která obchodní jednotka vlastní záznam, nezapomeňte zkontrolovat následující kaskádové efekty: Použití SDK pro .NET ke konfiguraci kaskádového chování.

Můžete nastavit, zda chcete umožnit uživateli nastavit sloupec Vlastnící obchodní jednotka, když je přepínač funkcí zapnutý. Pokud chcete nastavit sloupec Vlastnící organizační jednotka, musíte bezpečnostní roli uživatele udělit pro tabulku Organizační jednotka oprávnění Připojit k na místní úrovni.

Pokud chcete uživatelům umožnit nastavit tento sloupec:

  1. Přidejte ho do těla formulářů a jejich záhlaví.
  2. Přidejte ho do zobrazení.
  3. Přidejte ho do mapování sloupců. Pokud používáte funkci AutoMapEntity, zadejte sloupec v mapování.

Poznámka:

Pokud úloha nebo proces synchronizuje data mezi prostředími a zahrnuje vlastnící organizační jednotku ve schématu, úloha selže s porušením omezení cizího klíče , pokud cílové prostředí nemá stejnou hodnotu.

Odeberte sloupec Vlastnící organizační jednotka ze zdrojového schématu nebo změňte jeho zdrojovou hodnotu na organizační jednotku, která existuje v cílovém prostředí.

Pokud úloha nebo proces kopíruje data do externího prostředku, jako je například Power BI, zahrňte vlastnící organizační jednotku jenom v případě, že ji prostředek podporuje.

Vlastnictví tabulky/záznamu

Dataverse podporuje dva typy vlastnictví záznamů: vlastnictví organizace a uživatele nebo týmové vlastnictví. Typ vlastnictví zvolíte při vytváření tabulky a později ho nemůžete změnit. U záznamů vlastněných organizací všechna oprávnění buď povolí nebo odepře nějakou akci. U záznamů vlastněných uživatelem nebo týmem většina oprávnění podporuje úrovně přístupu na úrovni organizace, organizační jednotky, organizační jednotky a podřízené organizační jednotky a uživatele. Například nastavení oprávnění ke čtení kontaktů na uživatele omezuje uživatele na vlastní záznamy.

Například uživatel A patří do divize A a má oprávnění ke čtení kontaktů na úrovni obchodní jednotky. Uživatel A může zobrazit kontakt č. 1 a kontakt č. 2, ale ne kontakt č. 3.

Při konfiguraci oprávnění role zabezpečení nastavíte úroveň přístupu pro každé oprávnění. Následující snímek obrazovky ukazuje editor oprávnění bezpečnostní role.

Snímek obrazovky s editorem oprávnění rolí zabezpečení pro tabulky Dataverse

Editor oprávnění bezpečnostní role zobrazuje standardní typy oprávnění pro každou tabulku: Vytvořit, Číst, Zapsat, Odstranit, Připojit, Připojit k, Přiřadit a Sdílet. Každé oprávnění můžete upravovat zvlášť. Každý symbol odpovídá úrovni přístupu v klíči.

Snímek obrazovky s klíčem pro úrovně přístupu k oprávněním role zabezpečení

Příklad uděluje organizacím přístup k kontaktům, takže uživatel v oddělení A může zobrazit a aktualizovat kontakty vlastněné kýmkoli. Vyhněte se udělení většího přístupu, než potřebují uživatelé, protože tím oslabíte model zabezpečení.

Filtrování vlastnictví záznamů tabulky (Preview)

Funkce náhledu nejsou určeny pro produkční použití a mohou mít omezenou funkčnost. Tyto funkce jsou dostupné před oficiálním vydáním, aby zákazníci mohli získat dřívější přístup a poskytnout zpětnou vazbu.

Filtrování vlastnictví záznamů umožňuje správcům řídit přístup k záznamům Dataverse pomocí filtrů hodnot sloupců. Například udělte přístup pouze k záznamům, kde se City sloupec rovná Redmondu. Uživatelé můžou vytvářet, číst, aktualizovat a odstraňovat jenom záznamy, které odpovídají filtrům ve svých rolích zabezpečení.

Na rozdíl od tradičních tabulek Dataverse tabulky s filtrovaným vlastnictvím záznamů nepodporují vlastnictví záznamů, sdílení ani přiřazení. Oprávnění založená na filtrech řídí přístup k záznamům a poskytují podrobný přístup na úrovni řádků bez omezení tabulek, sloupců nebo jiných objektů modelu.

Poznámka:

Pomocí filtrovaného vlastnictví záznamu udělte záznamům, které splňují kritéria filtru, přístup na úrovni řádků. Pomocí oprávnění založených na filtru můžete filtrovat tabulky vlastnictví záznamů a existující tabulky vlastněné uživatelem nebo tabulkami vlastněnými organizací. U existujících tabulek tento přístup zachovává základní model vlastnictví.

Zaznamenávání vlastnictví v modernizovaných organizačních jednotkách

V modernizovaných organizačních jednotkách můžou uživatelé vlastnit záznamy napříč organizačními jednotkami. Pro tabulku záznamů potřebují jenom roli zabezpečení v libovolné obchodní jednotce s oprávněním ke čtení. V každé obchodní jednotce, ve které se nachází záznam, nepotřebují roli zabezpečení.

Pokud vaše produkční prostředí zachovává konfiguraci verze Preview pro Vlastnictví záznamů napříč organizačními jednotkami, povolte vlastnictví záznamů napříč organizačními jednotkami takto:

  1. Nainstalujte editor nastavení organizace.
  2. Nastavte nastavení organizace RecomputeOwnershipAcrossBusinessUnits na true. Toto nastavení zamkne systém až pět minut, zatímco systém přepočítá vlastnictví. Po přepočtu můžou uživatelé vlastnit záznamy napříč organizačními jednotkami bez samostatných rolí zabezpečení v každé obchodní jednotce. Vlastníci záznamů můžou také přiřadit svoje záznamy uživatelům mimo organizační jednotky, které vlastní.
  3. Nastavte AlwaysMoveRecordToOwnerBusinessUnit na hodnotu false. Záznamy pak zůstanou v původních vlastních organizačních jednotkách, když se změní vlastnictví.

V neprodukčních prostředích nastavte AlwaysMoveRecordToOwnerBusinessUnit na false, aby se povolilo vlastnictví záznamů napříč obchodními jednotkami.

Poznámka:

Pokud vypnete funkci Vlastnictví záznamů mezi organizačními jednotkami nebo nastavíte RecomputeOwnershipAcrossBusinessUnits na false pomocí nástroje OrgDBOrgSettings pro Microsoft Dynamics CRM, nemůžete nastavit ani aktualizovat pole Vlastnická organizační jednotka. Systém také aktualizuje pole Vlastnící organizační jednotka pro každý záznam tak, aby odpovídalo organizační jednotce vlastníka, když se hodnoty liší.

Týmy (včetně týmů skupiny)

Týmy jsou základní prvky zabezpečení, které patří do obchodní jednotky. Když vytvoříte obchodní jednotku, Dataverse automaticky vytvoří svůj výchozí tým. Dataverse spravuje členství výchozího týmu, které zahrnuje všechny uživatele přidružené k této obchodní jednotce. Členy nemůžete přidávat ani odebírat ručně. Dataverse aktualizuje členství, jakmile se uživatelé přidružují nebo oddělí od organizačních jednotek. Dataverse podporuje dva typy týmů: týmy vlastníka a přístupové týmy.

  • Vlastnící týmy mohou vlastnit záznamy. Členové týmu získají přímý přístup k záznamům vlastněným týmem. Uživatelé můžou patřit do více týmů, což uděluje široká oprávnění bez správy přístupu pro každého uživatele.
  • Další část vysvětluje přístup k týmům v rámci sdílení záznamů.

Sdílení záznamu

Jednotlivé záznamy můžete sdílet s uživatelem nebo týmem a zpracovávat výjimky, které neodpovídají modelům přístupu k vlastnictví záznamů nebo členství v obchodní jednotce. Sdílení používejte střídmě, protože může snížit výkon a znesnadnit řešení problémů s přístupem. Sdílení s týmem je efektivnější než sdílení s jednotlivými uživateli.

Přístupové týmy poskytují pokročilejší sdílení. Dataverse automaticky vytvoří přístupový tým a sdílí přístup k záznamům na základě šablony přístupového týmu, která definuje oprávnění. Přístupové týmy také podporují správu ručního členství bez šablony. Dataverse neumožňuje, aby přístupové týmy vlastnily záznamy nebo měly role zabezpečení, což zlepšuje výkon. Uživatelé získají přístup, když někdo sdílí záznam s přístupovým týmem, do kterého patří.

Zabezpečení na úrovni záznamu v Dataverse

Přístup uživatele k záznamu určuje několik faktorů. Dataverse kombinuje přístupy vyplývající z rolí zabezpečení uživatele, organizační jednotky, členství v týmech a sdílených záznamů. Tato oprávnění platí jenom v rámci jedné databáze prostředí a Dataverse je v každé databázi sleduje samostatně. Uživatel také potřebuje příslušnou licenci Dataverse.

Zabezpečení na úrovni sloupců v Dataverse

Zabezpečení na úrovni sloupců použijte, pokud přístup na úrovni záznamů nesplňuje požadavky obchodního scénáře. Zabezpečení na úrovni sloupců poskytuje podrobnější kontrolu nad přístupem. Podporuje všechny vlastní sloupce a většinu systémových sloupců. Většina systémových sloupců, které obsahují identifikovatelné osobní údaje (PII), podporuje individuální zabezpečení. Metadata jednotlivých systémových sloupců označují, jestli je k dispozici zabezpečení na úrovni sloupců.

Pro každý sloupec povolte zabezpečení na úrovni sloupců zvlášť. Potom vytvořte profil zabezpečení sloupce pro správu přístupu. Profil obsahuje sloupce s povoleným zabezpečením na úrovni sloupců a definuje oprávnění k vytváření, aktualizaci a čtení pro každý sloupec. Přidružte profil k uživatelům nebo týmům a udělte jim přístup k zabezpečeným sloupcům v záznamech, ke kterým už mají přístup. Zabezpečení na úrovni sloupců neuděluje přístup na úrovni záznamů. Používejte ho jenom v případě potřeby, protože nadměrné využití může snížit výkon.

Správa zabezpečení ve více prostředích

Pomocí řešení Dataverse můžete přesouvat role zabezpečení a profily zabezpečení sloupců mezi prostředími. V každém prostředí můžete vytvářet a spravovat organizační jednotky a týmy samostatně a přiřazovat uživatele k požadovaným komponentám zabezpečení.

Konfigurace zabezpečení uživatele v prostředí

Po vytvoření rolí, týmů a organizačních jednotek v prostředí přiřaďte nastavení zabezpečení jednotlivých uživatelů. Když vytvoříte uživatele, přidružte ho k organizační jednotce. Služba Dataverse ve výchozím nastavení přidruží uživatele ke kořenové organizační jednotce organizace a přidá uživatele do výchozího týmu této organizační jednotky.

Přiřaďte uživateli všechny požadované role zabezpečení a přidejte ho do příslušných týmů. Protože týmy můžou mít také role zabezpečení, efektivní oprávnění uživatele kombinují přímo přiřazené role s rolemi z členství v týmu. Dataverse použije z těchto oprávnění to nejméně omezující. Návod najdete v tématu konfigurace zabezpečení prostředí.

Pokud používáte zabezpečení na úrovni sloupců, přidružte uživatele nebo jeden tým uživatele k profilu zabezpečení sloupce.

Zabezpečení je komplexní téma. Tvůrci aplikací a tým, který spravuje uživatelská oprávnění, by měli spolupracovat na zabezpečení. Před nasazením koordinuje hlavní změny.

Viz také