Mein Rechtesystem mit MySQL sieht wie folgt aus:
1. Tabelle: User
2. Tabelle: Group
3. Tabelle: User_Group
In Tabelle 1 sind ganz normal die User-Infos gespeichert (Username, Mail, PW, etc. aber KEINE Gruppe).
In Tabelle 2 kann man beliebig Gruppen anlegen (Gruppennamen, Beschreibung, Farbe, etc.).
In der 3. Tabelle werden dann die verschiedenen User mit den verschiedenen Gruppen verknüpft. So kann ein User in mehreren Gruppen sein, welche verschiedene Rechte besitzt.
In einem Script sieht das ganze dann so aus, dass ein Array mit allen Gruppen des Users erzeugt wird. Danach wird mit in_array() abgefragt ob der User in der gewünschten Gruppe ist, um die Aktion auszuführen.
Oder aber die berechtigungen für z.B. ein Forum sind ebenfalls in einer mySQL-Tabelle hinterlegt...
|