Joomla ACL im Vergleich

Abgesehen von den Gruppen 'Public, Registered und Special'  kann man sagen die Access Control List (ACL) in Joomla 1.6 sind neu. Auf jeden Fall sind sie die auffälligste und größte Änderung in Joomla 1.6 gegenüber der Vorgängerversion. Aus diesem Grunde sollen diese hier etwas näher beleuchtet werden. Im allgemeinen spezifiziert eine Access Control List (ACL) welche Benutzer oder Prozesse das Recht haben auf ein Objekt zuzugreifen und welche Aktionen sie mit diesem Objekt ausführen dürfen. In Joomla 1.6 ist in den ACL hinterlegt, welcher Benutzer auf welchen Teil der Website Zugriff hat und welche Operationen dieser Benutzer auf diesem Teil der Joomla 1.6 Website ausführen darf.

 

Joomla 1.6 ACL im Vergleich

 Joomla 1.5Joomla 1.6
Gruppen 7 feste Gruppen (Public, Registered, Author, Editor,...) Unbegrenzte benutzerdefinierte Gruppen
Benutzer & Gruppen Ein Benutzer kann nur in einer Gruppe Mitglied sein Ein Benutzer kann Mitglied in beliebig vielen Gruppan sein
ACL 3 fest definierte ACL (Public, Registered, Spezial) Unbegrenzte benutzerdefinierte Access Levels
ACL & Gruppen Statische Beziehung zwishen Gruppen und ACL Gruppen sind ACL zugeordnet. Beliebig viele Kombinationen von Gruppen kann zu irgendeiner ACL zugeordnet werden

 

Joomla 1.6 Rechte und Vererbung

Access Control Lists (ACL) gewähren Benutern die Erlaubnis auf einem Objekt bestimmte Aktionen durchzuführen. In Joomla 1.5 waren dieses 'Aktionen' fest vordefiniert - in Joomla 1.6 können diese frei, benutzerdefiniert gesetzt werden. So waren z. B. die Zugriffsrechte in Joomla 1.5 binär, d. h. alles oder nichts. Ein Mitglied aus der Editor - Gruppe hat in Joomla 1.5 kann keinen Artikel bearbeiten, oder er kann alle bearbeiten. Dazwischen gibt es nichts.

In Joomla 1.6 werden die Aktionen, die einer Gruppe erlaubt sind durch den Administrator definiert. Sie sind nicht mehr fix wie in Joomla 1.5. Die Berechtigungen in Joomla 1.6 können auf mehrfachen Hierarchieebenen gesetzt werden (Website, Komponente, Kategorie, Objekt). In Joomla 1.5 bezogen sich die Berechtigungen auf die gesamte Website.

In Joomla 1.6 können Berechtigungen von Eltern - Gruppen und/oder Eltern - Kategorien vererbt werden. Mit Eltern-Gruppe bzw. Eltern-Kategorie ist das jeweils hierarchich darüberliegende Objekt gemeint. Beispiel: Wenn 'S-Klasse' eine Subkategorie von 'Mercedes' ist, dann kann die Kategorie 'S-Klasse' von der Kategorie 'Mercedes' Berechtigungen erben. In Joomla 1.5 gibt es keine Vererbung.

 

Wie funktionieren die Berechtigungen in Joomla 1.6

Es gibt insgesamt drei mögliche Berechtigungen für Aktionen. Wenn man davon ausgeht, dass keine der drei möglichen gesetzt ist, dann kann man auch sagen, es gibt vier Berechtigungen. Die vierte wäre dann wenn keine der drei gesetzt sind.

Inherit (erben): Vererbt die Berechtigung von einer Eltern - Gruppe,  Großeltern - Gruppe, ... beliebig weit hoch in der Hierarchie. Diese Erlaubnis wird mit Ausnahme der 'Global Configuration - Ebene, auf allen Ebenen angewendet.
Deny (verweigern): Verweigert die Aktion für diese Ebene und diese Gruppe. Es wird ebenfalls die Erlaubnis für alle Kindgruppen (=hierarchich untergeordnete Gruppen)  verweigert.
Allow (erlauben): Erlaubt diese Aktion für diese Ebene und diese Gruppe. Mit eingeschlossen sind Subebenen dieser Ebenen als auch Kindergruppen. Diese Einstellung bleibt allerdings wirkungslos wenn eine hierarchich darüber liegende Gruppe oder Level auf Deny gesetzt ist. Dann wird die Erlaubnis immer verweigert.
Wenn keine dieser drei Berechtigungen gesetzt sind dann wird defaultmäßig 'deny' angenommen. Anders allerdings, als wenn deny explizit gesetzt ist, kann die Berechtigung hier von hierarchich untergeordneten Gruppen auf Allow gesetzt werden.

Die 4 Erlaubnis - Hierarchie Ebenen (Permission Hierarchy Levels)

Berechtigungen für Aktionen in Joomla 1.6 sind in vier Ebenen definiert:
1. Global Configuration: bestimmt die Default- Berechtigungen für jede Aktion und Gruppe.
2. Component Options Permissions: kann die Default-Berechtigungen für genau diese Komponente überschreiben (z. B. Menü, Artikel).
3. Category: kann die Default-Berechtigungen für Objekte in einer oder mehreren Kategorien überschreiben. Das ist anwendbar für alle Komponente mit Kategorien einschl. Artikel Banner, Kontakt, Newsfeed und Weblinks.
4. Article: kann die Berechtigungen für einen bestimmten Artikel überschreiben. Diese Ebene ist nur auf Artikel anwendbar.

Autor: Niko Körner
Oktober 2005 schrieb Niko Körner 'Die ersten Schritte mit Joomla!'. Diese Anleitung wurde weit mehr als 5 Mio. Mal gelesen und im Internet gedownloadet. Seit 2005 ist er als Autor gelistet und schreibt rund um Joomla! und gibt Kurse.