Задать вопрос
kodenji
@kodenji

Гем Devise ( devise_parameter_sanitizer ) не работает или я что-то не понимаю?

Всем привет, в контроллере такие строки:
before_filter :configure_permitted_parameters, :only => [:create]

 protected
  def configure_permitted_parameters
      devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:email, :password,:password_confirmation, :company) }
      devise_parameter_sanitizer.for(:account_update) { |u| u.permit(:email, :password, :password_confirmation, :current_password, :company) }
  end

Все хорошо, работает. Но допустим если в поле Company вводить какие-нибудь конструкции: теги хтмл разные, какую-нибудь скрипт фигню, он в базу данных в таком виде и записывает, разве он не должен санировать поля, те отрезать все теги и тп, или таким образом нельзя атак сделать, объясните новичку.
  • Вопрос задан
  • 293 просмотра
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Thinknetica
    Профессиональная разработка на Ruby on Rails
    9 месяцев
    Далее
  • Skillbox
    Ruby on Rails с нуля
    10 месяцев
    Далее
  • Хороший программист
    Интенсив по Ruby on Rails
    5 месяцев
    Далее
Решения вопроса 1
@vsuhachev
Нет не должен. Оно только отрезает все не указанные параметры. И насчет тегов - в рельсах все строки по умолчанию безопасные, перед отдачей автоматом эскейпятся, если явно не указать обратное. Т.е. в вашем случае можно все оставить так как есть сейчас.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы