Die Seite, mit der ich arbeite, hat einen etwas komplizierten Umgang mit Benutzern und Berechtigungen.Wie können mehrere Benutzer mit mehreren Berechtigungsstufen strukturiert werden?
Dies sind die Benutzertypen:
- Benutzer
- Einrichtung Approver
- Einrichtung Admin
- Unternehmens Approver
- Corporate-Admin
Nun gibt es auch Einrichtungen und Hier kommen diese Berechtigungsstufen ins Spiel abspielen. Die Einrichtungen sind wie solche für die Benutzer und Benutzerebene in einer Tabelle verknüpft:
user_id facility_id userlevel
joebob ABCInc Facility Admin
Ziemlich einfach so weit, aber jetzt, was ich will in der Lage sein, einer Benutzerebene zu ermöglichen, Einschränkungen auf einer anderen Benutzerebene für eine bestimmte Anlage . Zum Beispiel bin ich der Administrator der Einrichtung und möchte Benutzern nur erlauben, bestimmte Formulare einzureichen. Wie würde ich das speichern?
Ich dachte eine neue Tabelle, die facility_id, userlevel und permissionlevel verbindet. Aber was genau wäre Berechtigungsniveau? Ein int? Oder würde ich Spalten wie canOrderThings oder canSearchForStuff zur Tabelle hinzufügen?
Ich sah, ob wie this würde funktionieren, aber es scheint wie es würde ein bisschen chaotisch und schwer zu verfolgen, wenn Sie eine große Anzahl von Berechtigungen haben. Wie würdest du Berechtigungsstufen hinzufügen, ohne alles aus dem Wahnsinn zu werfen? Oder sogar das Setzen von Berechtigungsstufen wäre ein bisschen schwierig, denke ich.
Auch Benutzer-Ebenen sind direkt mit Benutzern in der Benutzertabelle verknüpft, aber diese Server dienen verschiedenen Zwecken.
Gibt es eine vollständig bessere Möglichkeit, all das zu strukturieren?
[+1] Sie haben mich dazu geschlagen! Gut zu sehen, das ist ein guter Weg, Dinge zu tun. – EvilChookie