Rättigheter kan göra på många olika sätt.
Ett sätt som blir lätt att administrera om du behöver ändra rättigheterna mera "globalt" är att se till så att en användare har en pekare mot en säkerhetsgrupp (lite som i windows...)
sen så har du tex ett fält i säkerhetsgruppen där du anger endera en nivå som du själv hittar på (1,2,3,...). Eller så går du ner på detaljnivå per grupp och låter summan av alla rättigheter för enskilda rader vara det tal som du använder för att kolla behörighet. (shit, svårt att förklara).
Kod:
User SecurityGroup
=================
Bengan 2
Larsa 1
Nisse 1
Säkerhetsgrupp Beskrivning
=====================
1 Administratör
2 Editor
3 Användare
..din tabell pekar sedan mot säkerhetsgruppstabellen.
ELLER så ändra till denna lite mer lågnivåmodell:
User SecurityGroup
=================
Bengan 2
Larsa 1
Nisse 1
Säkerhetsgrupp Beskrivning Rättighet
==============================
1 Administratör 137
2 Editor 128
3 Användare 1
Rättigheter Beskrivning
==============================
1 Login
2 Forum-läs
4 Forum-skriv
8 Forum-radera
16 News-ny
32 News-radera
64 Medlemsadm-ny
128 Medlemsadm-radera
256 blablabla...
...
Rättigheterna i säkerhetsgruppen är alltså summan av de rättigheter alla i den gruppen ska ha. Exempelvis Nisse pekar mot administratör. Administratörsgruppen har rättighet 137 vilket betyder, i rättighetstabellen, rättighet (128+8+1) = 137.
Sen får du, i ditt serverspråk, använda lämplig funktion för att kolla om den aktuella rättigheten finns i den aktuella användarens grupps "rättighetssumma".