Frage

Meine Projektanforderung lautet ungefähr so:

Oben wird es einen Administrator geben, der auf der ersten Ebene Zugriff hat.

Unter Administrator gibt es Abteilungsleiter, die außer dem Erstellen von Abteilungsleitern Zugriff haben

Unter Abteilungsleiter befinden sich andere Mitglieder, die ihre zugewiesenen abteilungsweisen Daten verwalten.

Jetzt haben alle verschiedenen Abteilungsleiter ihre eigenen Informationen und Mitglieder, und alle Abteilungsleiter / Mitglieder haben Zugriff auf ihre eigenen spezifischen Datensätze, die sie eingeben / verwalten.

Mit der ACL-Komponente von CakePHP kann ich jetzt die Rollen und ihre Zugriffsebene aufteilen, aber alle Abteilungsleiter können die Informationen des anderen Abteilungsleiters sehen, da sie dieselbe Zugriffsebene haben, und alle anderen Mitglieder können die anderen Mitglieder sehen Informationen zu verschiedenen Abteilungen, ab denen sie denselben Zugriff haben.

Meine Projektkomplexität besteht darin, dass - sie nur ihre zugewiesenen oder erstellten Informationen / Daten sichtbar sein sollten, obwohl sie dieselben Ebenen- / Rollenzuweisungen wie andere haben.

Kann mir jemand die am besten geeignete Option vorschlagen, um all diese Dinge mit bereits verfügbaren Plug-Ins mit CakePHP zu verwalten.

Ich kann arbeiten, indem ich die Standard-ACL-Komponente anpasse, aber das dauert etwas länger als erwartet.

Bessere Ideen / Vorschläge wären willkommen!

War es hilfreich?

Lösung

So wie ich das sehe, ist ACL nicht so magisch. Zum Beispiel: ACL könnte die Berechtigungen verwalten, um festzustellen, wer Zugriff zum Hinzufügen / Bearbeiten / Entfernen eines Produkts hat. Es kann jedoch keine Abfrage ändern, um die Produkte entsprechend den definierten Berechtigungen zu filtern (wie "Benutzer aus Abteilung A können dies nur" Siehe Produkte aus Abteilung A "). Nun, eigentlich ist das eine Lüge. ACL könnte das schaffen, aber es ist möglicherweise nicht praktikabel, da Sie jedes Mal, wenn Sie ein Produkt hinzufügen, einen ACO erstellen und die Berechtigung in der Tabelle AROS_ACOS festlegen müssen und da das AROS eine Baumstruktur ist, kann es leicht zu einem Nigthmare werden, wenn Sie vorhaben, Ihre Daten abzufragen

Ich würde eine Nur-Gruppen-ACL um den Zugriff auf bestimmte Seiten / Aktionen zu steuern und Regeln festzulegen wie:

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top