[LRUG] How to *not* add an authenticity token to a form
Tom Lea
lrug at tomlea.co.uk
Thu Jul 23 04:10:07 PDT 2009
You probably need a to_sym in there.... but I left that as an exercise
for the reader.
On 23 Jul 2009, at 12:06, Tom Lea wrote:
> How about this in your session controller (assuming restful).
>
> def protect_against_forgery?
> super unless [:new, :create].include? params[:action]
> end
>
> (you don't need the skip_filter with this solution either)
>
> all untested. Good luck to ya!
>
> On 23 Jul 2009, at 11:54, Taryn East wrote:
>
>>
>> 2009/7/23 Murray Steele <murray.steele at gmail.com>
>>
>>
>> 2009/7/23 Taryn East <teast at globalpersonals.co.uk>
>> Hi all,
>>
>>
>> Is there no way to render a form without the authenticity token? No
>> other ideas?
>>
>> The bit that controls when an auth token are rendered is
>> protect_against_forgery? a helper method which relies on the class
>> level allow_forgery_protection variable. So on a controller level
>> you could probably do this:
>>
>> class IDontCareAboutNoForgeryController < ApplicationController
>> self.allow_forgery_protection = false
>> end
>>
>> However, I can imagine that you might want the controller to care
>> about forgery protection if auth tokens are provided, but in
>> certain actions not actually bother with rendering an auth token.
>> I don't think you can selectively include helpers in actions, so
>> you might have to do some before_filter helper fu (or just use a
>> separate controller for rendering the un-auth-token-generating-
>> forms).
>>
>> I thought so too... but from looking into the source code "allow
>> forgery protection" is just another way of calling the
>> verify_authenticity_token filter (you can see it here:http://apidock.com/rails/ActionController/RequestForgeryProtection/ClassMethods/protect_from_forgery)
>> .
>>
>> It doesn't actually stop the token from being rendered into the
>> form for that action (I checked).
>>
>> I'm now simply curious about whether or not there is actually a way
>> to not render the authenticity token... regardless of the actual
>> application of said token. Is there a way of telling rails "don't
>> render the token in this form/action" and having it actually
>> obey... short of hacking into core?
>>
>>
>> Cheers,
>> Taryn
>> _______________________________________________
>> Chat mailing list
>> Chat at lists.lrug.org
>> http://lists.lrug.org/listinfo.cgi/chat-lrug.org
>
> _______________________________________________
> Chat mailing list
> Chat at lists.lrug.org
> http://lists.lrug.org/listinfo.cgi/chat-lrug.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lrug.org/pipermail/chat-lrug.org/attachments/20090723/6dd31f7a/attachment-0003.html>
More information about the Chat
mailing list