Frage

Wie erstelle ich Benutzer- und Gruppen-ACLs in CRX direkt, anstatt auf dem Bildschirm zur Verwaltung des Benutzer-CQ5 ("CQ5 Security")?

Übersicht

In CRX 2.0/JCR 2.0 hat sich das Sicherheitsmodell verändert. Im neuen Sicherheitsmodell wird der Benutzerzugriff über Richtlinien zur Zugriffssteuerung definiert. [1]

In CQ5 nutzt das Nutzer- und Gruppensicherheitsmodell die Standard-Repository-Privilegien für JCR 2.0 [2] (wie definiert von org.apache.jackrabbit.core.security.authorization.acl.ACLTemplate access control policy).

Im Folgenden finden Sie einige Informationen über das neue Sicherheitsmodell:

  1. Die Option "inherit" existiert nicht mehr, wenn der Zugriff über den Verwaltungsschirm der CQ5 Security zugelassen oder verweigert wird.
  2. Wenn Sie die Zugriffsrechte für einen gegebenen Knoten zulassen oder verweigern, sind 3 Szenarios möglich:
    1. wenn derselbe ACE (Access Control Entry) von einem übergeordneten Knoten vererbt wird und kein entsprechender ACE auf dem Knoten vorhanden ist, geschieht nichts.
    2. wenn derselbe ACE von einem übergeordneten Knoten vererbt wird und ein entsprechender ACE bereits für diesen Pfad definiert ist, wird er entfernt.
    3. Wenn gleiche ACE nicht von einem übergeordneten Knoten dann übernommen werden, wird ein ACE für diesen Knoten erstellt.
  3. Wenn ein Benutzer Mitglied von 2 Gruppen ist und beide Gruppen einen ACE auf demselben Knoten zugewiesen haben, dann ist die Reihenfolge, auf die der Zugriff angewandt wird, im "CRX Explorer" im Security >> -> Access Control Editor... Dialog sichtbar. In diesem Dialogfeld können die ACEs per Drag und Drop neu angeordnet werden.

Hier ein Beispiel: group1 und group2 haben die Zugriffssteuerung für den Pfad /content/geometrixx. group1 kann nicht lesen und group2 kann lesen und user1 ist Mitglied der beiden group1 und group2 (ausschließlich). Bei dieser Konfiguration wird die Reihenfolge des Zugriffs wie im Dialog CRX Access Control Editor... bewertet.

Antwort, Auflösung

In CQ5.3 und neueren Versionen, zulassen/verweigern-Regeln (ACEs), die im "CQ5 Security"-Bildschirm (oder "User Administration") angezeigt werden, haben kein 1-zu-1-Verhältnis mit den eigentlichen ACEs, die in dem CRX 2.x-Repository festgelegt werden. Die folgende Tabelle zeigt, wie die Zugriffssteuerungen von CQ5 auf das CRX-Repository mappen:

CRX1.4.2. CQ5.2.1+. CRX2.0.
lesen lesen jcr:read
Knoten erstellen. erstellen jcr:addChildNodes, jcr:nodeTypeManagement
Eigenschaft festlegen. Änderungen auszuführen jcr:modifyProperties, jcr:versionManagement, jcr:lockManagement
Knoten entfernen. Löschen jcr:removeNode, jcr:removeChildNodes
ACL lesen. ACL lesen. jcr:readAccessControl
ACL bearbeiten. ACL verändern. jcr:modifyAccessControl

So bearbeiten Sie ACEs in CRX2.0:

  1. Melden Sie sich bei der Webanwendung http://<host>:<port>/crx an (http://<host>:<port>/crx/explorer in CQ5.5+).
  2. Öffnen Sie den Content Explorer
  3. Wählen Sie den Knoten aus, für den Sie ACLs festlegen möchten. (Stellen Sie sicher, dass, wenn der Knoten versionierbar ist, er nicht eingecheckt ist. Sie finden weitere Informationen zu diesem Konzept in der CRX-Dokumentation.)
  4. Öffnen Sie oben im Fenster „CRX Explorer“ Sicherheit >> => Zugriffsteuerungs-Editor..., um den Sicherheitsdialog zu öffnen.
  5. Aktivieren Sie im Sicherheitsdialog das Kontrollkästchen für ACL unter „Anwendbare Richtlinien für die Zugriffskontrolle“ und klicken Sie dann auf Ausgewählte Einstellungen übernehmen .
  6. Klicken Sie auf ACE hinzufügen, um einen neuen ACE (Zugriffskontrolleneintrag) hinzuzufügen.
  7. Suchen Sie nach einem Anwender oder einer Gruppe
  8. Wählen Sie Zulassen oder Verweigern
  9. Stellen Sie die Berechtigungen ein, die mit dem Eintrag zusammenhängen
  10. Speichern Sie, indem Sie rechts unten des Dialogs auf „Ok“ oder „Anwenden“ klicken (sollten die Felder „Ok“ oder „Anwenden“ nicht sichtbar sein, ändern Sie die Maße des Dialogs, um ihn größer zu machen).

Gilt für

CQ5.3, CQ5.4, CQ5.5.

Quellennachweis

[1] http://www.day.com/specs/jcr/2.0/16_Access_Control_Management.html#AccessControlPolicies
[2] http://www.day.com/specs/jcr/2.0/16_Access_Control_Management.html (Sektion 16.2.3 Standard Privileges siehen)

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie