Eine der Dinge, die zumindest grundsätzlich gelöst werden sollten, ist das Rechtesystem von fjorum. Zur Zeit besteht es aus zwei Flags (mod, admin) an der User-Klasse. Ich glaube nicht, dass das besonders gut skaliert
Aber da sich Berechtigungen quer durch die Anwendung ziehen, brauchen wir meiner Meinung nach **jetzt **eine solide (aber nicht over-engineerte) Lösung.
Meine Gedanken dazu:
- ein einfaches System aus Rollen und Permissions sollte ausreichen
- Permissions sollten nicht zu granular sein
- man könnte einige Rollen vordefinieren (User, Mod, Admin), sie sollten aber prinzipiell frei definiert werden können (wobei man vernünftige Standards vorgeben kann)
- es gibt aber die „magische“ Rolle Guest, die jeder Gast automatisch hat, so dass man auch Gästen Zugriff auf etwas gewähren kann
- Permissions müssen fest vorgegeben sein, dürfen also keine Entities sein (später sollte man die Möglichkeit für Plugins u.s.w. vorsehen, neue Permissions einzuführen)
- Es ist nicht notwendig, Permissions direkt an Nutzer vergeben zu können, das sollte immer über Rollen geschehen
- für die Autorisierung in der Anwendung (z.B. Admin-Bereich) sollten normalerweise nur Permissions relevant sein, außer im eigentlich Forum
- Im Forum kann über Rollen der Zugang zu Themen geregelt werden (z.B. ein Forenbereich für Admins, oder einen „Ü18 Schweinskram“-Bereich, der an eine Rolle „Adult“ gekoppelt ist). Dabei wird zwischen Leserecht und Vollzugriff unterscheiden (was ausreichen sollte)
- Man muss nicht alles über Rechte lösen, bei manchen Sachen bin ich mir da auch noch nicht sicher (z.B. zeitliche Nutzersperre)
Klingt das soweit vernünftig, habe ich was übersehen, oder gibts da schon was fertiges bei OBI?