Benutzer, Rechte und die Eigentümer?
Ich hatte mal die simple Fragestellung, in Ruby on Rails ein Login-System mit Benutzerrechten und Profilen zu bauen. Kurz gesagt: ein Standard. Nun hab ich das RESTful Authentication- in Kombination mit dem acl_system2-plugin verwendet. Kurz darauf kam bei mir die Frage auf, wie man das denn schön machen kann mit dem Owner! Also der Nutzer kann seine Profildaten ändern, darf aber die der anderen nicht verändern. klare sache!
Mein erster Ansatz war es mit einem before_filter zu prüfen, ob bei der Ressourse (ja, REST) bzw. dem Objekt es sich um den Eigentümer handelt. Leider liegen die Filter in der Ausführungsreihenfolge recht weit vorn, wodurch meine erste Lösung unschön wurde.
Das Problem erledigte sich quasi von selbst, sobald man bei den 7-REST methoden als Ressource den aktuellen Benutzer verwendet, der ja dann in der Session gespeichert ist und nicht den Benutzer anhand der ID aus der Datenbank liest.
…manchmal ist man halt auf dem Holzweg.