Действительно ли Rails' protect_from_forgery действительно полезен?
Я спрашиваю об этом, потому что чувствую, что моя жизнь становится слишком сложной, когда я начинаю общаться с рельсами с помощью ajax или flash.
Я знаю, что хорошо защищаться от CSRF, но разве я не могу просто проверить реферера или что-то еще?
1 ответ
Решение
Многие пользователи деактивируют своего реферера, в основном не по своему выбору.
Но потому что они за брандмауэром, который его блокирует.
Использование защиты от подделки - единственное решение для защиты вас от CSRF.
Но вы можете отключить для любого действия, которое вы хотите.
В вашем контроллере вы добавляете:
skip_before_filter :verify_authenticity_token, :only => :create
Это отключит проверку токена для действия create в контроллере, в который вы добавили фильтр.