Som krokodilko skrev i sin kommentar beror det på vilken flexibilitet du behöver.
Jag har implementerat rollbaserade behörigheter för en av mina kunder enligt följande:
- Användare (användar-id (PK), användarnamn (unikt), lösenord (saltat och hashat! ), förnamn, efternamn, telefon etc')
- Roll (roll-id (PK), rollnamn (unik), rollbeskrivning)
- Behörighet (behörighets-id (PK), behörighetsnamn (unikt)) - flikarna/skärmarna/åtgärderna visas här
- Användare till roll (användar-id, roll-id) – PK är båda kolumnerna kombinerade
- Roll till behörighet (roll-id, behörighets-id) - PK är båda kolumnerna kombinerade
Men mitt krav var att vara så flexibel som möjligt, och det är ett system som fortfarande växer (6 år och räknar).
Jag antar att många applikationer kan ha användaren till rollen som en till många-relation, istället för många till många som i mitt fall, men jag skulle inte gå hårt åt att koda behörigheter eller roll till behörigheter i någon applikation.
Ytterligare förklaring:Rollbaserad säkerhetsdatabasdesign på Vad vet jag?