--=REKLAMA=--

ACL w Joomla/Domyślne ustawienia ACL

Z Joomla!WikiPL

Domyślne ustawienia ACL

Podczas instalacji Joomla! tworzone są domyślne grupy i ustawienia. W celu zrozumienia działania ACL omówimy te ustawienia.

Grupy domyślne

Nowe wersje Joomla pozwalają Ci na tworzenie swoich własnych grup. Gdy zainstalujesz nowy Joomla, zawiera on już w sobie kilka grup, pokazanych poniżej.

ACL user groups.png

Strzałki pokazują zależność potomek-rodzic (podrzędna-nadrzędna, przypisana do-macierzysta). Po ustawieniu uprawnień dla grupy dominującej (nadrzędnej) są one automatycznie dziedziczone przez wszystkie grupy potomne. Uprawnienia Nieustawione [Not Set], Odziedziczenie [Inherit] oraz Dozwolone mogą być nadpisane w grupach potomnych (dzieci, podrzędnych). Ustawienie Zabronione [Deny] nie może zostać nadpisane i zawsze zabrania działania dla wszystkich grup potomnych.

Konfiguracja globalna

Jak wskazywaliśmy wcześniej, uprawnienia do każdego działania są dziedziczone z wyższego poziomu konfiguracji dostępu i z nadrzędnej (macierzystej) grupy użytkowników (szerszej w hierarchii grup użytkowników).

Zobaczmy, jak to działa. Najlepszym miejscem dla obserwacji są ustawienia całej witryny. Znajdziemy je na stronie Witryna -> Konfiguracja globalna -> Uprawnienia:


Konf globalna prawa dostepu2.png

Pierwszą rzeczą, na którą należy zwrócić uwagę, jest dziesięć zakresów działań, jakie może realizować użytkownik: Logowanie do witryny, Logowanie do zaplecza, Dostęp do wyłączonej witryny, Pełna kontrola, Dostęp do komponentu, Tworzenie, Usuwanie, Poprawianie, Zmiana stanu, Poprawianie własnych. Są to działania, które można wykonywać na obiektach Joomla!.

Zwróćmy uwagę, że nie ma wśród wymienionych działania "przeglądanie", bowiem dostęp do witryny jest domyślnie powszechny - wszyscy mają prawo przeglądania jej treści i korzystania z udostępnionych usług.

Dokładne określenie, czego dotyczy każdy z zakresów działań, zależy od kontekstu. W przypadku konfiguracji globalnej zakresy działań są zdefiniowane w następujący sposób:

  • Logowanie do witryny [Site Login]: prawo logowania się do części publicznej.
  • Logowanie do zaplecza [Admin Login]: prawo logowania się do części administracyjnej.
  • Dostęp do wyłączonej witryny [Offline Acces]: prawo podglądu wyłączonej witryny.
  • Pełna kontrola [Super Admin]: prawo wykonywania wszelkich możliwych działań, w tym przywilejów superużytkownika, takich jak zmiana konfiguracji globalnej, nadawanie uprawnień; przywilejów super użytkownika nie można ograniczyć.
  • Dostęp do komponentu [Access Component]: dostęp do pulpitu kontrolnego komponentu i – w efekcie - prawo wykonywania udostępnianych operacji (prawo wykonywania wszystkich możliwych działań administracyjnych w komponentach, w tym ich konfigurowania), a więc np. zarządzanie użytkownikami, pozycjami menu, artykułami, itd.
  • Tworzenie [Create]: możliwość tworzenia nowych obiektów, np. kont użytkowników, pozycji menu, modułów, kategorii, artykułów, zakładek i innych.
  • Usuwanie [Delete]: możliwość nieodwracalnego usuwania istniejących obiektów.
  • Poprawianie [Edit]: możliwość korygowania istniejących wszystkich treści, niekoniecznie własnych
  • Zmiana stanu [Edit State]: możliwość modyfikowania stanu publikacji obiektu (publikowanie, wycofywanie z publikacji, archiwizowanie i przywracanie z archiwum, przenoszenie do kosza i odzyskiwanie z kosza).
  • Poprawianie własnych [Edit Own ]: możliwość korygowania stworzonych przez siebie artykułów i innych elementów treści.

Każda grupa użytkowników ma swoją własną kartę uprawnień, otwieraną, gdy klikniemy nazwę grupy. Gdy zainstalujemy przykładowe dane, mamy 10 grup, w tym 8, które mieliśmy już w Joomla 1.5 oraz dwie dodatkowe grupy nazwane „Dostawcy sklepu” (Shop Suppliers) oraz „Klienci sklepu” (Customer Group).

Zwróć uwagę, że standardowe grupy mają ustawione dokładnie takie same uprawnienia, jak w wersji 1.5.Pamiętaj wszakże, że każde z tych uprawnień można zmienić tak, jak zechcesz. Zobaczmy jak to działa:

  • Wszyscy [Public]: W każdym z działań pozostawiono uprawnienia Nieustawione.

25 acl wszyscy.png

To może się zdawać nieco zagmatwane. Zasadniczo określenie Nieustawione oznacza to samo co Dziedziczone. Ponieważ jednak Wszyscy to najszersza możliwa grupa (a więc najwyższego poziomu, nie można jej zawrzeć w żadnej innej, szerszej) oraz ponieważ konfiguracja globalna dotyczy najszerszego, bo całego obszaru witryny, wszystkich komponentów, jest w hierarchii na najwyższym poziomie, nie ma uprawnień, które można by skądś odziedziczyć. Dlatego użyto określenia Nieustawione zamiast Odziedziczone. Domyślnie zatem (standardowo) nie ma w tym przypadku żadnych uprawnień. Jest tak, jak się spodziewasz - grupa Wszyscy nie ma żadnych uprawnień podstawowych, poza prawem do przeglądania). Równie ważne jest, aby zdać sobie sprawę z faktu, że ponieważ nic nie jest ustawione na Niedozwolone, więc każde z uprawnień może być zastąpione przez uprawnienia nadane grupie potomnej lub w węższym obszarze witryny (niższym w hierarchii).

  • Operatorzy [Manager] są grupą potomną (potomkiem grupy) Wszyscy.

25 acl operatorzy.png

Po grupie Wszyscy grupa Operatorzy nie dziedziczy żadnego uprawnienia, ponieważ grupa Wszyscy nie posiada żadnych uprawnień podstawowych. Dlatego grupie Operatorzy zostały nadane jawnie prawie wszystkie uprawnienia podstawowe, z wyjątkiem uprawnień Dostęp do komponentów i Pełna kontrola. Zatem członkowie tej grupy mogą wykonywać wszystkie działania w witrynie i na zapleczu, z wyjątkiem zmian w konfiguracji globalnej i w opcjach komponentów.

  • Administratorzy: członkowie tej grupy dziedziczą wszystkie uprawnienia grupy operatorów oraz posiadają dodatkowo uprawnienia Dostęp do komponentu. Oznacza to, że członkowie tej grupy mogą robić wszystko, z wyjątkiem bycia superużytkownikiem. Domyślnie mogą otwierać panele kontrolne wszystkich komponentów i zarządzać wszystkimi elementami witryny, z wyjątkiem modyfikowania konfiguracji globalnej oraz tworzenia, modyfikowania i usuwania kont superużytkowników.

25 acl administratorzy.png

  • Zarejestrowani [Registered] posiadają te same prawa, co Wszyscy. Wyjątkiem jest możliwość logowania się do witryny. Ponieważ domyślne uprawnienia są dziedziczone, oznacza to, że dopóki to uprawnienie nie zostanie zmienione dla grupy potomnej, wszystkie grupy potomne (a więc należące także do grupy Zarejestrowani) będą mogły się zalogować.

25 acl zarejestrowani.png

  • Autorzy [Author] są potomkami grupy zarejestrowanych, wiec dziedziczą uprawnienia przypisane tej grupie, w wyniku czego posiadają uprawnienie Logowanie do witryny oraz dodatkowo - jawnie nadane uprawnienia Tworzenie i Poprawianie własnych treści.
Ponieważ autorzy, redaktorzy i wydawcy nie posiadają uprawnień na zapleczu, omawiamy je poniżej, przedstawiając uprawnienia realizowane w części publicznej (po stronie witryny).

25 acl autorzy.png

  • Redaktorzy' [Editor] jako dzieci grupy autorzy dziedziczą ich uprawnienia Logowanie do witryny oraz Tworzenie i Poprawianie własnych treści, a dodatkowo zostało im jawnie ustawione prawo Poprawianie wszystkich treści tworzonych przez wszystkich innych użytkowników.

25 acl redaktorzy.png

  • Wydawcy [Publisher] jako grupa potomna dziedziczą od redaktorów uprawnienia Logowanie do witryny, Tworzenie, Poprawianie własnych i Poprawianie oraz dodatkowo ustawiono im jawnie uprawnienie Zmiana stanu publikacji artykułów (mogą je publikować, wycofywać z publikacji, archiwizować, przenosić do Kosza).

25 acl wydawcy.png

  • Dostawcy sklepu to grupa przykładowa (jeśli zainstalujesz przykładowe dane), potomek grupy autorzy, dziedziczy jej uprawnienia.
  • Klienci sklepu to grupa przykładowa (jeśli zainstalujesz przykładowe dane), potomek grupy zarejestrowani, dziedziczy jej uprawnienia.
  • Superużytkownicy [Super User] są grupą potomną grupy Zarejestrowani. Tylko jedno uprawnienie – Pełna kontrola – zostało ustawione super użytkownikom jawnie jako Dozwolone. To dzięki temu uprawnieniu członkowie tej grupy są jedyną grupą, która ma dostęp do konfiguracji globalnej i może wprowadzać w niej dowolne zmiany.
    Superużytkowników charakteryzują specjalne przywileje:
    • Jeżeli użytkownik ma uprawnienia superużytkownika, żadne inne ustawienia uprawnień dla tego użytkownika nie są istotne. Użytkownik może wykonywać dowolne działania na witrynie spośród możliwych.
    • Tylko super użytkownicy mogą utworzyć konta innych superużytkowników, zmieniać je lub usuwać
    • Tylko super użytkownicy mogą tworzyć, modyfikować i usuwać grupy superużytkowników.

25 acl superuzytkownicy.png

Są dwie ważne rzeczy niezbędne w celu zrozumienia tego panelu.

Pierwsza to zrozumienie, jak uprawnienia mogą być dziedziczone z grupy rodziców.

Druga to zrozumienie, w jaki sposób możesz kontrolować uprawnienia grup i do działań.

Daje to dużą swobodę. Na przykład, jeśli chcesz, aby grupa Dostawców sklepu miała możliwość logowania się do zaplecza, wystarczy że zmienisz wartość Logowanie do zaplecza na "Dozwolone".

Jeśli nie chcesz pozwalać grupie administratorów na usuwanie obiektów lub zmianę ich stanu, zmieniasz odpowiednie ustawienia na Dziedziczone (po operatorach) albo Niedozwolone.

Ważne jest również, aby zrozumieć, że zdolność do posiadania grupy potomnej (dziecka, grupy podrzędnej) jest w pełni opcjonalna. Umożliwia ci zapisywanie w jednym momencie ustawień konfigurujących nową grupę. Jeśli jednak chcesz, możesz skonfigurować wszystkie grupy tak, że ich rodzicem będzie grupa Wszyscy, nie będą więc dziedziczyć żadnych uprawnień z grupy macierzystej.

Opcje komponentów i uprawnienia

Teraz kontynuujmy porównywanie tego, jak domyślne ustawienia uprawnień na zapleczu w wersji od 2.5 wzwyż naśladują uprawnienia z wersji 1.5. Grupa superużytkowników w 2.5 jest tożsama z grupą głównych administratorów w 1.5.

Wystarczy że popatrzymy na widok globalnej konfiguracji, aby stwierdzić, że grupy administratorzy oraz operatorzy mają identyczne uprawnienia. Jednakże w wersji 1.5 administratorzy mogli robić wszystko za wyjątkiem ustawień konfiguracji globalnej, podczas gdy operatorzy nie mogli dodawać użytkowników i pracować z elementami menu. Takie ustawienie występuje również w wersji 2.5. Zobaczmy jak to zostało osiągnięte.

Jeśli przejdziemy na stronę Użytkownicy    Użytkownicy i naciśniemy w przyborniku przycisk Opcje, zobaczymy ekrany, jak poniżej. Na pierwszym zdjęciu mamy uprawnienia operatorów:

25 acl komponent operatorzy.png

A na kolejnym uprawnienia grupy administratorów:

25 acl komponent admiistrat.png

Ten ekran jest taki sam, jak ekran uprawnień konfiguracji globalnej, za wyjątkiem tego, że wartości dotyczą tylko pracy z użytkownikami. Zobaczmy jak to działa.

Po pierwsze zwróćmy uwagę na to że grupa administratorów posiada uprawnienia do wykonywania zadań administracyjnych natomiast grupa operatorów ma tę opcję zablokowaną. Pamiętaj, że działania administracyjne w konfiguracji globalnej nadają grupie uprawnienia superużytkowników. Jak widać na zdjęciu akcje administracyjne są dostępne, więc grupa administratorów może to robić, natomiast grupa operatorów nie.

Następnie zwróć uwagę, że administratorzy dziedziczą opcje zarządzania, a operatorzy mają te działania zabronione. Na tym ekranie opcje zarządzania dają grupie dostęp do menedżera użytkowników. Odkąd administrator posiada uprawnienia do zarządzania od tego momentu uprawnienia są dziedziczone. Od chwili, gdy grupa operatorów ma zabronione działania zarządzania członkowie tej grupy nie mają dostępu do menedżera użytkowników oraz nie mogą wykonywać żadnych działań związanych z użytkownikami.

Jeśli spojrzysz na opcje dla Menu    Projektant menu zobaczysz te same domyślne ustawienia, jak dla menedżera użytkowników. Znów grupa administratorów może zarządzać i ustawiać domyślne pozwolenia dla obiektów projektanta menu w przeciwieństwie do grupy operatorów.

W skrócie: Widzimy ze różnorodne uprawnienia dla grup administratorów i operatorów są ustawiane poprzez Opcje    Uprawnienia w menedżerze użytkowników oraz w projektancie menu.

Ważne jest także, aby zrozumieć, że te same Opcje    Uprawnienia są dostępne dla wszystkich obiektów w Joomla!, włącznie z menedżerami Media, Reklamy, Kontakty, Doniesienia, Statystyka wyszukiwania, Zakładki, Rozszerzenia, Moduły, Dodatki, Szablony i Języki. Dysponujesz zatem możliwością tworzenia dowolnych grup użytkowników, z dokładnym określeniem tego, co mogą robić na zapleczu.

Uprawnienia w witrynie

Domyślne uprawnienia do działań w witrynie są także ustawiane przy pomocy formularza opcji. Spójrz na Artykuły    Artykuły    Opcje    Uprawnienia.. Najpierw spójrzmy na uprawnienia operatora pokazane poniżej:

25 acl artykuly operatorzy.png

Operatorzy dysponują wszystkimi uprawnieniami w stosunku do artykułów, z wyjątkiem możliwości ich konfigurowania.

Następnie spójrzmy na uprawnienia administratorów i zobaczymy, że w tym przypadku administrator może robić z artykułami to wszystko, co operatorzy, a dodatkowo mogą konfigurować artykuły, a więc mają dostęp do okna Artykuły    Artykuły    Opcje.

25 acl artykuly administrat.png

Zatem obie grupy mogą tworzyć, usuwać, i poprawiać artykuły oraz zmieniać stan ich publikacji, ale operatorzy nie ma możliwości zmiany domyślnych uprawnień dla artykułów.

Teraz spójrzmy, jak ustawione są uprawnienia wydawców, redaktorów i autorów.

Autor może tworzyć artykuły oraz redagować własne artykuły, co widać poniżej:

25 acl artykuly autorzy.png

Oznacza to, że autorzy mogą dodawać nowe artykuły i poprawiać swoje własne artykuły, ale nie mogą ich usuwać, nie mogą zmienić stanu ich publikacji, ani też nie mogą redagować artykułów napisanych przez innych użytkowników.

Redaktorzy mają takie same uprawnienia jak autorzy, a dodatkowo mogą korygować artykuły napisane przez innych.

25 acl artykuly redaktorzy.png

Tak więc redaktorzy mogą poprawiać artykuły wszystkich innych użytkowników.

Wydawcy mają takie same uprawnienia jak redaktorzy oraz - dodatkowo - mogą zmieniać stan publikacji artykułów, jak widać na ilustracji poniżej.

25 acl artykuly wydawcy.png

Tak więc wydawcy mogą zmienić stan publikacji każdego artykułu. Możliwe stany to: Opublikowany, Nieopublikowany, Zarchiwizowany, Wyrzucony (W Koszu).

Wszystkie te grupy dziedziczą uprawnienia z poziomów konfiguracja globalna i zarządzanie komponentem.

Zapamiętaj, że autorzy są grupą potomną utworzoną w grupie użytkowników zarejestrowanych, a zarejestrowani nie mają szczególnych domyślnych uprawnień, poza możliwością zalogowania się. Ponieważ zarejestrowani nie mają uprawnień do konfigurowania artykułów i nie mają praw zarządzania komponentem, a uprawnienia do tych działań są przez autorów dziedziczone, więc autorzy ich również nie posiadają. Podobnie jest z dziedziczeniem uprawnień autorów przez redaktorów oraz wydawców od redaktorów. Domyślnie więc żadna z tych grup nie ma uprawnień do pracy z artykułami w części administracyjnej, na zapleczu.

Ważne jest by zapamiętać, że te uprawnienia są jedynie domyślnymi uprawnieniami dla potomnych grup kategorii i artykułów. Mogą więc w tych grupach być zmienione, nadpisane dla wybranych kategorii czy określonych artykułów.

Zauważ ponadto, że w domyślnych uprawnieniach nie ma ustawienia Niedozwolone. To umożliwia Ci dodawanie (zwiększanie) uprawnień na każdym poziomie. Zapamiętaj, że jeśli ustawisz jakieś działanie jako Niedozwolone, to będzie ono zabronione na wszystkich niższych poziomach hierarchii. Przykładowo, jeśli ustawisz Logowanie do zaplecza dla zarejestrowanych na Niedozwolone (zamiast Dziedziczone), nie będzie możliwe zezwolenie redaktorom czy wydawcom na to działanie.

Menedżer artykułów i diagram działań

Na diagramie poniżej przedstawiono jak każde z dozwolonych działań jest powiązane z różnymi opcjami na stronie menedżera artykułów na zapleczu.

Acl aricle diagram.png

  • Konfigurowanie: uprawnia do przeglądania i zmieniania opcji konfiguracyjnych komponentu.
  • Dostęp do komponentu uprawnia do otwarcia okna menedżera artykułów na zapleczu. Bez tego uprawnienia żadne inne działanie dotyczące artykułów na zapleczu nie byłoby możliwe.
  • Tworzenie: uprawnia do dodawania nowych artykułów.
  • Usuwanie: uprawnia do umieszczania artykułów w koszu. Uwaga: Ikona Opróżnij kosz widoczna jest jedynie wówczas, gdy filtr Wybierz stan zostanie ustawiony na Wyrzucone do kosza.
  • Poprawianie: uprawnia do redagowania istniejących artykułów.
  • Zmiana stanu: uprawnia do publikowania, wycofywania z publikacji, usuwania i archiwizowania artykułów.
  • Redagowanie własnych: podobnie jak poprawianie, ale ma zastosowanie tylko do własnych artykułów.


Dziękujemy za wkład

» Stefan Wajda [zwiastun],