Jak to funguje
Každá role, systémová nebo vlastní, nese dvě oddělená pole:- Oprávnění – přístup k datům vynucovaný serverem. Řídí, co API vrátí danému uživateli. Příklad: oprávnění
customers:viewumožní uživateli číst data zákazníků. - Viditelné oblasti – přítomnost v UI na straně klienta. Řídí, které sekce se zobrazují v bočním panelu administrace a jsou dostupné přes URL. Příklad:
customersvevisibleAreaszobrazí kartu Zákazníci.
customers:view (kvůli podpoře mezizdrojových postupů, jako je výběr zákazníka u objednávky), aniž by se sekce Zákazníci zobrazovala v bočním panelu.
Asymetrické pravidlo
Viditelné oblasti se řídí jedním směrovým omezením:- Zobrazení oblasti vynutí přístup k datům. Pokud je
customersvevisibleAreas, role musí mít i oprávněnícustomers:view. Matice oprávnění to vynucuje automaticky: zapnutí viditelnosti oblasti doplní chybějící oprávnění:view. - Přístup k datům nevynutí viditelnost. Udělení
customers:viewautomaticky nepřidácustomersdovisibleAreas. Boční panel zůstane beze změny.
Řešení napříč rolemi
Efektivní viditelné oblasti uživatele jsou sjednocením všech přiřazených rolí: systémové role plus libovolných vlastních rolí. Pokud kterákoli role oblast obsahuje, oblast se v bočním panelu zobrazí.finance, ale vlastní role „Finance Viewer“ ji přidá. Uživatel vidí všech sedm sekcí.
Dostupné oblasti
Viditelné oblasti se mapují jedna ku jedné na zdroje administrace nejvyšší úrovně:Viditelnost jednotlivých karet
Kromě skrývání celých sekcí bočního panelu mohou role skrýt jednotlivé karty uvnitř sekce. Každá role nese seznamhiddenTabs: pole klíčů resource:subResource, které určuje, jaké karty se potlačí.
Karty se řídí sémantikou průniku (AND), opakem viditelných oblastí:
- Viditelné oblasti používají sjednocení: vyhrává jakákoli role, která oblast zobrazuje.
- Skryté karty používají průnik: karta je skrytá, jen když ji skrývá každá role přiřazená uživateli. Pokud ji kterákoli role nechá viditelnou, zobrazí se.
orders:order_payments, takže zůstává skrytá. Jen jedna role skrývá orders:order_documents, takže karta Dokumenty se zobrazí.
Karty, které lze skrýt
Každá karta v administraci je identifikovaná klíčemresource:subResource. Celá sada pokrývá všechny hlavní oblasti:
Každý klíč má prefix svého zdroje v API (např.
orders:order_payments). Matice oprávnění v administraci je zobrazuje seskupené podle zdroje s jejich čitelnými názvy.

Výchozí hodnoty systémových rolí
Každá systémová role přichází s předdefinovanou sadou viditelných oblastí:
Vlastní role mohou tyto výchozí hodnoty rozšířit o oblasti, které systémová role neobsahuje.
Systémové role ve výchozím stavu neskrývají žádné karty: všechny karty jsou viditelné. Skrývání jednotlivých karet se konfiguruje jen přes vlastní role.
Použití
Konfigurace viditelnosti v matici oprávnění
Když vytváříš nebo upravuješ vlastní roli, matice oprávnění zobrazuje sloupec Zobrazit v UI vedle sloupců přístupu k datům (Spravovat, Vytvořit, Vymazat, Zobrazit data). Sloupec má dvě úrovně zaškrtávátek:- Řádek nejvyšší úrovně – řídí sekci bočního panelu (viditelnou oblast). Přepnutím ji celou zobrazíš, nebo skryješ.
- Řádky podzdrojů – řídí jednotlivé karty uvnitř dané sekce. Rozbalením řádku nejvyšší úrovně se zobrazí zaškrtávátka pro jednotlivé karty.
Když je viditelnost skrytá, ale přístup k datům zůstává
Skrytá oblast nebo karta neblokuje mezizdrojové postupy. Časté scénáře:- Výběr zákazníka v objednávkách – role s oprávněním
customers:view, ale bezcustomersve viditelných oblastech, může při vytváření objednávky stále vyhledávat a vybírat zákazníky. Sekce Zákazníci je skrytá, ale výběr funguje. - Skrytá karta, viditelná data – skrytí
orders:order_paymentsodstraní kartu Platby z detailu objednávky, ale platební data dál proudí přes další zobrazení (např. souhrny na kartě Souhrn objednávky, reporty). - Přímé odkazy – odkaz přímo na URL uvnitř skryté oblasti zobrazí stránku s omezeným přístupem. Oprávnění k datům dál platí na straně serveru, ale administrace stránku nevykreslí.
Související články
Uživatelé a role
Spravuj členy týmu, přiřazuj role a konfiguruj oprávnění.
Boční panel
Jak je organizovaný boční panel administrace a co obsahuje každá sekce.