Access Control Lists mit mehreren Gruppenzugehörigkeiten
-
Moin,
ich möchte ACL für die Zugriffssteuerung benutzen.
Sprich:
- eine Baumhierarchie sowohl für Access Request Objects als auch für Access Control Objects
- individuelle Berechtigungen unter Berücksichtigung von Vererbung durch die Hierarchie
- mehrere Gruppenzugehörigkeiten eines ACOs oder auch AROsBisher hat mir die ACL-Implementierung von cakePHP mit dem modified preorder tree traversal sehr gut gefallen - leider ist damit keine Zugehörigkeit zu mehreren Gruppen möglich. Trotzdem möchte ich auf solche Optimierungen eher ungern verzichten, weil die schon viel bringen.
Eine Alternative wäre es, eine ARO bzwl AcoCollection unter Beibehaltung des Tree Traversals einzuführen, die mehrere Zugriffsobjekte unter sich verwaltet. Das hat nur drei Nachteile:
a) es ist vom Design her recht unschön
b) würde es das Problem der konkurrierenden Zugriffsrechte geben => verschiedene Objekte der selben Collection haben unterschiedliche individuelle Zugriffsrechte (das könnte man dann einschränken auf das erste Objekt einer Collection)
c) ist es vermutlich nicht sonderlich performant.Wie regelt ihr euren Zugriffsschutz mit solchen Anforderungen? Welche Optimierungsverfahren habe ich evt. übersehen? (ich habe 4 Varianten gefunden, von der jedoch nur eine wirklich sinnvoll in einer Datenbank implementiert werden kann)
Vielen Dank im Voraus !
MfG
-