Redakční systém Joomla lze použít nejenom pro základní webové stránky, ale i pro stránky, které umožňují skupinám uživatelů přístup do různých částí webu, kteří tam budou provádět povolené úkony. Příkladem webu s potřebou správy více uživatelů může být web školy, muzea, univerzity případně jakékoli větší instituce, která má v úmyslu do tvorby obsahu zapojit více uživatelů. Více uživatelů zamená např. 5, ale i 500 a více.
Co tedy Joomla v tomto směru nabízí? Velmi propracovaný nástroj s názvem Seznam pro řízení přístupu (Access Control List – ACL). Tento nástroj se skládá ze dvou „podsystémů“:
Nejdříve je potřeba do Joomly zadat uživatele. Ty zadáte buď vy ručně přes Správce uživatelů (User Manager) v administraci nebo se registrují sami přes návštěvnické stránky nebo pokud je již máte, tak je importujete/exportujete přes jedno z volně dostupných rozšíření, opět přes administraci.
Správa uživatelů probíhá vždy v administraci, konkrétně ve Správci uživatelů. Uživatele je nutno rozřadit do skupin ve Skupinách uživatelů (Groups). Skupiny uživatelů lze chápat jako činnosti, tedy co uživatelé budou moci na webu dělat. Rozdělení do skupin však nestačí.
Skupinám uživatelů je nutné přiřadit Úrovně přístupu (Access Levels). Uživatelé, resp. skupiny uživatelů, budou mít přes úrovně přístupu potvrzen přístup k „objektům“ joomly. Objekty Joomly jsou myšleny články, kategorie článků, moduly, nabídky, položky nabídek a další.
Výhoda Seznamu pro řízení přístupu (Access Control List – ACL) je vysoká míra škálovatelnosti. Uživatelé můžou být uspořádáni do navzájem nesouvislých skupin nebo naopak skupin, které se budou prolínat. Stejně tak úrovně přístupu můžou obsahovat přístupy pro nesouvislé skupiny uživatelů nebo pro prolínající se skupiny uživatelů.
Příkladem může být web školy. Uživatelé ve skupině Žáci budou mít možnost přistupovat pouze k „žákovským“ kategoriím, kantoři zase jen ke „kantorským“.
Dalším příkladem může být školní web s 27 třídami (1.A až 9.C). Každá třída bude mít jednoho třídního učitele, který bude na webu školy tvořit obsah pouze pro svoji třídu. Do obsahové části jiné třídy nebude mít možnost přispívat. Ale ostatní návštěvníci (žáci, učitelé, rodiče atd.) budou mít přístup pro čtení všude (pokud pro ně bude vhodně nastavena úroveň přístupu).
Tato škálovatelnost je velmi široká, dokonce lze vytvářet podúrovně skupin uživatelů, v kterých lze uplatnit dědičnost vztahů, tedy pokud vyšší úroveň něco povoluje nebo zakazuje, lze tento stav automaticky uplatnit i na nižší úroveň.
Přístup, tedy co uživatel může vidět, je vždy podmíněn registrací a jeho přihlášením na příslušný web. Při každém přihlášení se kontroluje, kam všude může uživatel přistupovat. Pozor, pokud změníte přístupová oprávnění přihlášeného uživatele, tato změna se u něj projeví až při příštím přihlášení. Tedy přihlášení samotné je okamžikem kontroly.
Naprosté většině běžných uživatelů byste neměli dávat přístup do administrace. Tvorba obsahu by měla probíhat přes hlavní stránku a modul obsahující odkazy na vkládání příslušného obsahu.
Výše uvedené popisuje pouze co může uživatel na webu navštívit, tedy vidět. Pokud na daném místě má možnost/povinnost i něco provádět, musí mu být přiřazeno oprávnění.
Nejvyšší správa oprávnění se provádí v Globálním nastavení v části Práva (Global Configuration, Permissions). Zde nastavujete, co jednotivé úrovně přístupu (které tedy musíte nejdříve vytvořit) můžou provádět.
Příklad: můžou se uživatelé ve skupině uživatelů Žáci s oprávněním Žáci přihlašovat na veřejný web? Můžou se přihlašovat do administrace? Můžou měnit nebo mazat obsah?
Takto nastavená oprávnění se pro různé skupiny uživatelů reprodukují do správců jednotlivých komponent. V komponentách lze určit výchozí nastavní pro všechny komponenty (např. pro všechny kategorie článků, články, nabídky atd).
Odchylky od výchozího nastavení měníte pro konkrétní objekty komponent (konkrétní články, konkrétní kategorie článků).
V pravé části s názvem Vypočítané nastavení (Calculated Setting) vidíte, jaké oprávnění se dědí z vyšší úrovně, v levé části s názvem Vyberte nové nastavení (Select New Setting) volíte oprávnění pro konkrétní skupinu uživatelů a konkrétní úkon. Pokud je úkon na vyšší úrovni zakázán, nemůžete jej na nižší úrovni povolit.
Tvorba skupin uživatelů, úrovní přístupu a oprávnění je činnost vhodná pro zkušeného administrátora. Před samotným nastavováním joomly doporučujeme vše pečlivě promyslet, prodiskutovat, nakreslit a poté implementovat na zkušební web. Až po otestování ve zkušebním prostředí aplikovat na ostrý web.
V případě zájmu můžete navštívit naše školení Joomla, kde tuto problematiku probíráme.