Das neue Rechtesystem
Wir planen ein erweiterbares Rechtesystem basierend auf einer rollenbasierten Zugriffskontrolle. Hierbei kommen zu den o.g. Ressourcentypen "Benutzer" und "Gruppe" zwei weitere hinzu, nämlich "Rollen" und "Rechte".
Eine Rolle beschreibt im Prinzip eine Aufgabe, die ein Benutzer erfüllen soll, also z.B. das Erstellen von Beiträgen / Inhalten ("Redakteur"). Hierzu wird die Rolle mit den dafür notwendigen Rechten verknüpft, z.B. "Seite anlegen", "Sektionen verwalten", "Inhalte ändern" usw. Die so konfigurierte Rolle kann nun Benutzern bzw. Gruppen zugeordnet werden, so daß sich die damit verknüpften Rechte entsprechend auswirken können.
Weitere Details:
Historie
Das Rechtesystem von BlackCat CMS Version 1.x basiert noch auf dem Rechtesystem von WebsiteBaker (WB). Dieses ist relativ einfach gehalten und absolut statisch, das heißt, es lassen sich keine weiteren Rechte - etwa von Modulen - hinzufügen.
Das WB-Rechtesystem basiert auf Benutzern und Gruppen. Nur Gruppen können Rechte erhalten. Ein Benutzer kann Mitglied in mehreren Gruppen sein und erhält über diese Mitgliedschaften seine Rechte.
Die Hauptnachteile:- Die Liste der verfügbaren Berechtigungen ist nicht erweiterbar, bzw. Erweiterungen erfordern Änderungen im Core.
- Module können sich die verfügbaren Benutzer und Gruppen nicht oder nur sehr eingeschränkt zunutze machen. Daher verfügen Module, die mit Rechten arbeiten, zumeist über ein eigenes Rechtesystem. (z.B. Bookings, KeepInTouch) Das wiederum führt zu einem Wildwuchs an Berechtigungssystemen und Stellen, an denen Rechte vergeben werden können bzw. müssen.
- Es ist nicht möglich, Rechte zu verschachteln.
- Die Art, wie die Berechtigungen eines Benutzers gespeichert werden.
- Relativ einfach zu administrieren und zu durchschauen. (Eingeschränkt durch o.g. Wildwuchs.)