Im Jabber kam nun so etwas heraus:
2 Einstllungsseiten, einerseits Userseite andererseits Gruppenseite
Auf der Userseite:
Rechte: erlaubt, verboten und gruppe.
Gruppe ist default.
Auf der Gruppenseite: erlaubt, verboten und streng verboten.
Streng verboten überschreibt erlaubt in anderen Gruppen
Wie funktioniert das Ganze? Durch das Userdefaultrecht Gruppe wird in den Gruppen, in denen er sich befindet, für ein erlaubt geschaut, falls vorhanden der Zugang gewährt. Besitzen allerdings eine Gruppe (oder mehrere) Gruppen "streng verboten" bekommt er keinen Zugang.
Falls Gruppe auf Userseite nicht definiert ist (sondern erlaubt oder verboten) werden die Gruppenberechtigungen damit überschrieben.
Implementierung:
- Check ob für ein Recht erlaubt oder verboten auf Userseite definiert sind. Falls ja, fertig, ansonsten weiter mit dem nächsten Punkt
- Falls eine Gruppe, in denen der User ist, streng verboten für dieses Recht besitzt Erlaubnis verweigern und fertig, ansonsten weiter mit dem nächsten Punkt
- Falls man hier angelangt, schauen ob in einer Gruppe erlaubt gesetzt ist ansonsten verboten schalten und aus...
So, nun sollte alles klar sein ;)
