👤 Access Control List (ACL)
Benutzer, Rollen und Zugriffsrechte
1) Zugriffssteuerungslisten (ACLs) → Zugriffs-Richtlinien
- Öffne Sicherheit → Zugriffssteuerungslisten (ACLs) → Zugriffs-Richtlinien.
- Kopiere die Richtlinie Content Editor
(Kontextmenü → Duplizieren) und benenne diese z.B.
Content Editor MODX
Wichtig: Eigene Kopien werden bei Updates nicht überschrieben. - In der duplizierten Richtlinie kannst du alle Berechtigungen individuell anpassen.
(Export und Import sind ebenfalls möglich.) - Speichern
2) Neue Rolle „Editor“ anlegen
- Menü Sicherheit → Zugriffssteuerungslisten (ACLs) → Rollen
- + Neue Rolle
- Name:
Editor - Authority:
10 - Beschreibung: Inhaltsredakteur (eingeschränkter Manager-Zugriff)
- Name:
- Speichern
3) Benutzergruppe „Redaktion“ anlegen
- Öffne Sicherheit → Zugriffssteuerungslisten (ACLs).
- Wechsle in den Reiter „Benutzergruppen & Benutzer“.
- Klicke auf + Neue Benutzergruppe und trage ein:
- Name:
Redaktion - Beschreibung:
Redakteur pflegt die Inhalte der Webseite
- Name:
- Speichern
Optional: Unter Einstellungen → Dashboards kannst du das Standard-Manager-Dashboard duplizieren und für normale Benutzer anpassen. Das angepasste Dashboard weist du später in den ACL-Einstellungen der Benutzergruppe zu, damit Redakteure beim Login eine eigene Startansicht bekommen.
4) Zugriffsrechte zuweisen
-
Links die neue Gruppe „Redaktion“ auswählen.
-
Auf „Benutzergruppe bearbeiten“ klicken.
-
Du befindest dich nun in:
Zugriffssteuerungslisten (ACLs) → Redaktion, Reiter „Zugriffsrechte“. -
Dort steht bereits ein Eintrag:
web – Member (9999) – Context
(dieser bleibt bestehen) -
Füge nun folgende Einträge hinzu:
- Context:
Manager (mgr)
Rolle:Editor (10)
Zugriffs-Richtlinie:Content Editor MODX - Context:
Website (web)
Rolle:Editor
Zugriffs-Richtlinie:Content Editor MODX
- Context:
-
Speichern
💡 Die Access-Policy „Content Editor“ wurde dupliziert, damit eigene Rechte-Sets auch nach Updates erhalten bleiben.
Häufig werden nur ausgewählte Einstellungen benötigt – zum Beispiel 46 von 185 möglichen Berechtigungen.
Diese lassen sich bei Bedarf exportieren und wieder importieren.
Die finalen Einstellungen sollten anschließend mit einem Redakteur-Account getestet werden.
Beispiel: 46 Berechtigungen
change_password, change_profile, class_map, countries, delete_document, directory_create, directory_list, directory_remove, directory_update, edit_document, file_create, file_list, file_manager, file_remove, file_tree, file_update, file_upload, file_view, formit, frames, home, language, list, load, logout, menu_reports, menu_site, menu_tools, menu_user, new_document, new_weblink, publish_document, resource_duplicate, resource_quick_create, resource_quick_update, resource_tree, save_document, search, source_view, tree_show_element_ids, tree_show_resource_ids, undelete_document, unpublish_document, view, view_document, view_template
5) Benutzer anlegen und zuweisen
- Menü Sicherheit → Benutzer → Erstellen
- Reiter Allgemeine Informationen:
- Benutzername, Passwort und E-Mail festlegen
- Checkbox „Aktiv“ einschalten
- Optional: Passwort direkt vergeben
- Reiter Zugriffsrechte:
- Benutzer zur Gruppe hinzufügen
- Benutzergruppe:
Redaktion - Rolle:
Editor
- Speichern
- Menü Sicherheit → Ihre Berechtigungen neu laden (Flush Permissions)
6) Benutzer auf bestimmte Media Sources einschränken
Ab MODX 2.2+ (und in MODX 3 standardmäßig) werden Datei-Berechtigungen über Media Sources gesteuert.
Erstelle zuerst einen Ordner:
assets/modx/content/redaktion
7. Neue Media Source anlegen
Menü Medien → Medienquellen → Erstellen
- Name: z.B.
Redaktion-Dateien - Quellen-Typ:
Dateisystem - basePath:
assets/modx/content/redaktion/ - baseUrl:
assets/modx/content/redaktion/ - basePathRelative: Ja
- baseUrlRelative: Ja
Speichern
Wichtig:
Die bestehende Media SourceFilesystemhabe ich nur für den Administrator zugänglich gemacht (Zugriffsrechte: Benutzergruppe:Administrator/ Rolle:Super User – 0).
Alle anderen Benutzer erhalten dadurch ausschließlich Zugriff auf ihre eigenen Media Sources.
8. Zugriffsrechte für die Media Source setzen
- Reiter Zugriffsrechte öffnen
- Benutzergruppe hinzufügen
- Benutzergruppe:
Administrator - Mindestens benötigte Rolle:
Super User - 0 - Zugriffs-Richtlinie:
Media Source Admin
- Benutzergruppe:
- Speichern
Danach erscheint ein eigener Eintrag für die BenutzergruppeAdministrator.
- Weiter im Reiter Zugriffsrechte
- Benutzergruppe hinzufügen
- Benutzergruppe:
Redaktion - Mindestens benötigte Rolle:
Editor - 10 - Zugriffs-Richtlinie:
Media Source Admin
- Benutzergruppe:
- Speichern
Danach erscheint ein eigener Eintrag für die BenutzergruppeRedaktion.
Jeweils auf die Zugriffs-Richtlinie „Media Source Admin“ klicken und die Berechtigungen nach Bedarf anpassen:
- copy
- create
- list
- load
- remove
- save
- view
Speichern
9) Benutzerprofil erweitern
- Menü Sicherheit → Benutzer → gewünschten Benutzer auswählen
- Reiter „Einstellungen“ öffnen
- Diese Einstellung hinzufügen bzw. bearbeiten:
- Schlüssel:
default_media_source - Name:
Default Media Source - Beschreibung:
setting_default_media_source_desc - Feldtyp:
Textfeld - Namensraum:
core - Wert: ID der Media Source „Redaktion-Dateien“ z.B.:
2
- Schlüssel:
- Speichern
10. Berechtigungen aktualisieren und testen
- Menü Sicherheit → Ihre Berechtigungen neu laden (Flush Permissions)
- Mit dem Redakteur einloggen → der Benutzer sollte nur Zugriff auf den definierten Media-Source-Ordner haben.
11. Ressourcen nur für Administrator bearbeitbar machen
Damit bestimmte Dokumente nur vom Administrator bearbeitet werden können, nutzt MODX Ressourcen-Gruppen.
Der Tab „Ressourcen-Gruppen“ erscheint erst, wenn mindestens eine Gruppe existiert.
a) Ressourcen-Gruppe „AdminOnly“ anlegen
- Menü Sicherheit → Ressourcen-Gruppen
- Ressourcen-Gruppe erstellen
- Name:
AdminOnly - Kontext:
web - Keine Checkbox aktivieren
- Name:
- Speichern
b) Ressourcen-Gruppe der Administrator-Benutzergruppe zuweisen
- Menü Sicherheit → Zugriffssteuerungslisten (ACLs)
- Reiter „Benutzergruppen & Benutzer“
- Benutzergruppe Administrator auswählen
- Benutzergruppe bearbeiten
- Reiter „Zugriffsrechte“
- In der linken Spalte „Ressourcen-Gruppen“ wählen
- Ressourcen-Gruppe hinzufügen
- Ressourcen-Gruppe:
AdminOnly - Kontext:
Manager (mgr) - Mindestens benötigte Rolle:
Super User – 0 - Zugriffs-Richtlinie:
Resource
- Ressourcen-Gruppe:
- Speichern
- Menü Sicherheit → Ihre Berechtigungen neu laden (Flush Permissions)
⚠️ Wenn der Context versehentlich auf
webgesetzt wird, ist die Ressource auch im Frontend gesperrt.
💡 Im Menü Sicherheit → Ressourcen-Gruppen bekommst du eine übersichtliche Ansicht deiner bestehenden Gruppen und kannst per Drag & Drop deine Ressourcen von der Website in AdminOnly verschieben (entfernen per Kontextmenü).
c) Dokument einem geschützten Bereich zuordnen
- Ein Dokument öffnen (z.B. Impressum)
- Reiter „Ressourcen-Gruppen“
- Häkchen bei AdminOnly setzen
- Speichern
✅ Ergebnis
Nur Administratoren können dieses Dokument sehen und bearbeiten. Andere Benutzergruppen (z.B. „Redaktion“) sehen es nicht und können es nicht öffnen.
🔄 Zusammenfassung (Best Practice)
- Rollen bestimmen Berechtigungslevel (z.B. 10 = Editor).
- Benutzergruppen bündeln User mit gleichen Aufgaben.
- Kontexte trennen Manager (
mgr) und Frontend (web). - Media Sources steuern Dateizugriffe.
- Ressourcengruppen regeln Frontend-Zugriff.
- Nach Änderungen immer „Berechtigungen neu laden (Flush Permissions)“ ausführen.

