Hello, I just joined the camping list. I was trolling the archives when I saw this: -- The biggest problem in Camping is authentication. This is a problem I propose to solve by providing an extension. That little bit of code uses the path to allow/disallow urls. That way it is unobstrusive. In the future I would also like to make an OpenID client and server for Camping. -- I was wondering if anyone had gone down the OpenID client/server route? I''m in the process of writing one myself as a demonstration of camping for my local ruby group. I''m in the process of writing the server, and I think I can supply the client as a mixin. If anyone has done work on this front, I''d be interested to combine efforts. I too see many opportunities for tiny little gnat sized apps working together in glorious harmony. And user auth is certainly the first step. Cheers, -Mark
The problem with authentication is that you manage it at an application level. So if you''re running each of them side by side, you''ll have multiple User tables, etc... What I actually do is manage the authentication on the reverse proxy but it introduces other limitations, like the inhability to map datas with users in a straight forward manner. I think the best would be to provide some camping server-wide authentication mechanism so that it can be shared by the various applications. A server-wide template would also be interesting so that you can add links between the apps. But Camping doesn''t support plugins (yet) :) -- Cheers, zimbatm http://zimbatm.oree.ch
Perhaps I''m way in the wrong, but I assumed we could mixin additional Models, Views, and Controllers. I just sent another message to the list, where I realized that this is not as easy as I thought. Is it possible at all? If so, I think this would provide a very good avenue for a unified authentication/user method. We could mixin a User model, a Login controller, and the appropriate views. Like the Camping::Session mixin. Similarly for your site wide template idea, mixin a layout method. Again, I''m still pretty new to camping, so I might be misunderstanding the whole thing. Cheers, -M On 11/14/06, Jonas Pfenniger <zimba.tm at gmail.com> wrote:> The problem with authentication is that you manage it at an > application level. So if you''re running each of them side by side, > you''ll have multiple User tables, etc... What I actually do is manage > the authentication on the reverse proxy but it introduces other > limitations, like the inhability to map datas with users in a straight > forward manner. > > I think the best would be to provide some camping server-wide > authentication mechanism so that it can be shared by the various > applications. A server-wide template would also be interesting so that > you can add links between the apps. But Camping doesn''t support > plugins (yet) :) > > -- > Cheers, > zimbatm > > http://zimbatm.oree.ch > _______________________________________________ > Camping-list mailing list > Camping-list at rubyforge.org > http://rubyforge.org/mailman/listinfo/camping-list >
Yes, look in Equipment so see what I did. There is a security module that separate the authentication of the authorization. You can define authentication or authorization rules on a class or application wide level. Note that mixins have some limitations, this is why the Equipment extension method is pretty complex. If you mix module A in module B and THEN add some methods to module A, module B won''t get them. In Equipment, all includes are done when the #create method is called to avoid that problem. -- Cheers, zimbatm [1] http://zimbatm.oree.ch/files/camping.png