2011-02-02 3 views
0

У меня есть вопрос на решение, которое я считаю безопасным, но хотелось бы второе мнение:вопрос о массовом присвоении и связанного с ним риска безопасности

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

В данном конкретном случае, однако, мы работаем с рельсовым движком, который потребует много усилий (что мы бы предпочли избежать), если мы не оставим атрибут, назначаемый массой.

Теперь наше решение заключается в следующем: В пользователь # обновление действия в контроллере мы просто отогнать роли атрибута из Params хэша, прежде чем она будет обновлена:

params[:user].delete(:roles) 

Хотя я понимаю, что это не это идеальное решение, безопасно ли оно?

Спасибо за ваш опыт,
Эрвин

ответ

Смежные вопросы