restful authentication, RoR 2.0.2 и InvalidAuthenticityToken

7 views
Skip to first unread message

vcub

unread,
Dec 24, 2007, 8:40:22 AM12/24/07
to RubyOnRails to russian
Доброго времени суток!

Недавно на мыло пришла ошибка от exception_notification:

ActionController::InvalidAuthenticityToken occurred in
sessions#create:

Использую Cookie Based Session Store и последнюю версию
restful_authentication. Попробовал повторить ситуацию локально у себя.
Сначала не получилось, но потом я вырубил cookies и сразу же вылезла
ошибка 500 с тем же симптомом. В старых версиях RoR и
restful_authentication при вырубленных cookies естественно ничего
такого не было, пользователь просто не логинился. Кто-нибудь
сталкивался с таким? Какие могут быть варианты? Не использовать Cookie
Based Session Store? Отключить protect_from_forgery у sessions#create?
Насколько последний вариант безопасен? :)

WBR

vcub

unread,
Dec 24, 2007, 9:34:56 AM12/24/07
to RubyOnRails to russian
On 24 дек, 22:40, vcub <logvi...@nm.ru> wrote:
> Доброго времени суток!
>
> Недавно на мыло пришла ошибка от exception_notification:
>
> ActionController::InvalidAuthenticityToken occurred in
> sessions#create:
Ух, без куков вообще любой POST выдает InvalidAuthenticityToken. :(

WBR

Timur Vafin

unread,
Dec 24, 2007, 9:47:50 AM12/24/07
to ror...@googlegroups.com
vcub пишет:

>> Недавно на мыло пришла ошибка от exception_notification:
>>
>> ActionController::InvalidAuthenticityToken occurred in
>> sessions#create:
> Ух, без куков вообще любой POST выдает InvalidAuthenticityToken. :(

ну ест-но сессии то у вас нету
без куков у вас и обычная сессия не будет работать.

--
Тимур Вафин

http://flatsourcing.com
http://tatsoft.ru

Игорь

unread,
Dec 24, 2007, 10:53:17 AM12/24/07
to RubyOnRails to russian
Я не силен еще в рельсах, но либо это недочет плагина, либо самих
рельсов.
В PHP or ASP.Net если кука не поддерживается идентификатор сессии
(плюсуется ко всем url на странице) передается через url.

On 24 дек, 22:40, vcub <logvi...@nm.ru> wrote:
> Доброго времени суток!

> Недавно на мыло пришла ошибка от exception_notification:

> ActionController::InvalidAuthenticityToken occurred in
> sessions#create:

Ух, без куков вообще любой POST выдает InvalidAuthenticityToken. :(

WBR


А вот причем тут POST, вообще не понятно?Какая связь может быть между
POST и кукой... Неужто в рельсах есть такой дурацкий глюк?Или я что то
не так понял?

Timur Vafin

unread,
Dec 24, 2007, 11:40:30 AM12/24/07
to ror...@googlegroups.com
Игорь пишет:

> Я не силен еще в рельсах, но либо это недочет плагина, либо самих
> рельсов.
> В PHP or ASP.Net если кука не поддерживается идентификатор сессии
> (плюсуется ко всем url на странице) передается через url.

Да такой логики не реализовано. И реализация ее под вопросом.
Нужно ли делать возможность авторизации для того небольшого числа
пользователей, которые не используют куки в браузере?

> Ух, без куков вообще любой POST выдает InvalidAuthenticityToken. :(

> А вот причем тут POST, вообще не понятно?Какая связь может быть между


> POST и кукой... Неужто в рельсах есть такой дурацкий глюк?Или я что то
> не так понял?

Прочитайте как работает protect_from_forgery, и будет ясно.
К сессию кладется токен, если нет куки, то нет и сессии.

vcub

unread,
Dec 25, 2007, 8:13:09 AM12/25/07
to RubyOnRails to russian
On 24 дек, 23:47, Timur Vafin <tim...@gmail.com> wrote:
> >> ActionController::InvalidAuthenticityToken occurred in
> >> sessions#create:
> > Ух, без куков вообще любой POST выдает InvalidAuthenticityToken. :(
> ну ест-но сессии то у вас нету
> без куков у вас и обычная сессия не будет работать.
Да, действительно, совсем вылетело из головы, что
protect_from_forgery использует сессию. Прошу прощения. Значит тут
вариант или отказываться от protect_from_forgery, либо забить на
пользователей, у кого отключены куки. :) Просто есть пара ситуаций,
где есть обычный POST для Ajax и куки совсем не нужны, а такой юзер
обламывается с exception. В прочем :except никто не отменял...

Julian 'Julik' Tarkhanov

unread,
Dec 28, 2007, 2:04:53 AM12/28/07
to ror...@googlegroups.com

On 24-dec-2007, at 16:53, Игорь wrote:

>
> Ух, без куков вообще любой POST выдает
> InvalidAuthenticityToken. :(

Это очень рестфул, да...

--
Julian 'Julik' Tarkhanov
please send all personal mail to
me at julik.nl


Reply all
Reply to author
Forward
0 new messages