Обработка ошибок CSRF в Rails - PullRequest
0 голосов
/ 02 мая 2018

У меня есть сценарий, в котором пользователь может бездействовать на странице, и примерно через 15 минут запрос на публикацию из браузера пользователя вызовет ошибку неверного токена CSRF. Этот вопрос был несколько полезен, но я все еще не уверен, как мне поступить с ошибкой.

Rails protect_from_forgery прерывает форму входа в систему, если простаивает

Один комментарий в вопросе, который я связал с вышеупомянутыми проблемами безопасности с продлением срока действия файлов cookie Rails. Это действительно так? Должен ли я вместо этого обновить страницу при появлении этой ошибки? Я не хочу отключать защиту CSRF. Как лучше всего справиться с этой ошибкой и сохранить удобство использования? Я также использую Devise в своем приложении.

Can't verify CSRF token authenticity.
Completed 422 Unprocessable Entity in 4ms (ActiveRecord: 0.0ms)

ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):

1 Ответ

0 голосов
/ 02 мая 2018

Ответ, который вы связали, уже дает некоторое представление о том, что вы можете сделать на стороне сервера.

Однако вы можете запретить отправку устаревших форм на стороне клиента. Некоторые настройки javascript / UI могут вам помочь.

Вот несколько идей: - Показать обратный отсчет - всплывет через 15 минут, который говорит вам, чтобы обновить и т.д.

Кто-то всегда может открыть код и отправить, но тогда вас не волнует эта ошибка 422 перед лицом людей, пытающихся взломать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...