Новичок в ASP.NET MVC - придется ли мне заново изучать безопасность?
-
19-09-2019 - |
Вопрос
Я планирую работу над новым проектом и сейчас испытываю соблазн использовать ASP.NET MVC.Мой проект планирует использовать jQuery и AJAX (хотя клиенты, отличные от JS, также будут поддерживаться).Исходя из стандартного ASP.NET предыстория, я все еще пытаюсь разобраться в парадигме MVC (с большой помощью от Скотт Гатри).Однако моя главная проблема при использовании MVC - это аспекты безопасности.Я довольно много занимался безопасностью с ASP.NET и я знаю, как обрабатывать различные векторы атак.Нужно ли мне заново изучать безопасность с помощью ASP.NET MVC?Существуют ли новые угрозы или даже новые способы борьбы со старыми угрозами, о которых мне нужно будет прочитать?Я заказал пару книг ASP.NET По MVC (в которых есть главы о безопасности), но я хотел бы узнать об опыте кого-либо еще в этом.
Спасибо
Решение
Зависит от того, что вы подразумеваете под безопасностью.
Авторизация в принципе такая же, если не проще.Аутентификация в формах поддерживается и поощряется, и вам нужно только вставить [Authorize]
атрибут для контроллеров или действий контроллера.Там не слишком многому можно научиться.
ViewState исчез, так что вам не нужно беспокоиться о проверке ViewState или любой другой подобной ерунде.
Если вы имеете в виду XSS, я бы сказал, что это примерно то же самое;вам нужно экранировать свои данные на выходе, и это очень легко сделать:
<%= Html.Encode(Model.SomeString) %>
Единственное, что я могу придумать, что вам может показаться немного другим, - это обработка CSRF / XSRF.К счастью, большая часть этого уже встроенный в фреймворк.
Так что в целом я бы сказал, что нет, кривая обучения безопасности в ASP.NET MVC не должна быть и близко такой крутой, как кривая обучения самой архитектуре.