Ich habe über den Web-App denke, ich bin beginnen Entwicklung und fragen, ob mein üblicher Ansatz verbessert werden könnte.Wie sollte ich meine ACL in einer Webanwendung implementieren?
In meinen letzten Apps habe ich eine Tabelle (siehe unten) von Rollen (wie CREATE POST
, EDIT POST
usw.) erstellt, auf die jeweils ein Bitfeld angewendet wurde, damit ich einem Benutzer einfach bestimmte Rechte bei der Registrierung und zuweisen kann überprüfen Sie sie später (zB $user->hasRight(CREATE_POST)
).
Ich frage mich, ob es dazu ein besserer Ansatz ist. Es ist verwirrend sicher, wenn die Rechte nicht speziell mit dem Benutzer verknüpft (ich konnte eine Tabelle, wo jedes Recht eine boolean Spalte ist aber das klingt nur wie eine kleine Verbesserung) - und was passiert, wenn ich einige um ändern?
Ich bin nicht auf der Suche nach Standard-Bibliotheken (die App selbst ist eine Lernerfahrung für mich: Postgresql, Git etc.), obwohl ich mich sehr glücklich bin Inspiration von ihnen zu nehmen, um mein eigenes zu bauen - also wenn es ist etwas besonderes, das du denkst, ich sollte einen Blick darauf werfen, bitte sag es so :)
Zusätzlich: es wird für eine PHP-Anwendung sein, aber wenn es eine gute Übung in sagen, Ruby on Rails getan wird, bin ich sicher, dass ich es herausfinden kann :) – Ross