4

我正在计划一个新项目,现在很想使用 ASP.NET MVC。我的项目计划使用 JQuery 和 AJAX(虽然也支持非 JS 客户端)。来自标准的 ASP.NET 背景,我仍在尝试了解 MVC 范例(在Scott Guthrie的大力帮助下)。但是,我对使用 MVC 的主要关注是安全方面。我已经使用 ASP.NET 完成了相当多的安全工作,并且我知道如何处理各种攻击向量。我需要重新学习 ASP.NET MVC 的安全性吗?是否有新的威胁,甚至是处理旧威胁的新方法,我必须阅读?我已经订购了几本 ASP.NET MVC 书籍(其中有关于安全性的章节),但我想知道其他人对此的经验。

谢谢

4

1 回答 1

2

取决于您所说的安全性。

授权基本相同,如果不是更容易的话。支持并鼓励表单身份验证,您只需[Authorize]在控制器或控制器操作上粘贴一个属性。在那里学的东西不多。

ViewState 已消失,因此您无需担心 ViewState 验证或任何此类问题。

如果您指的是 XSS,我会说它差不多。您需要在输出中转义您的数据,这很容易做到:

<%= Html.Encode(Model.SomeString) %>

我能想到的唯一一件你可能会发现有点不同的是处理 CSRF/XSRF。幸运的是,其中大部分已经内置到框架中。

所以总的来说,我会说不,ASP.NET MVC 中的安全学习曲线不应该像架构本身的学习曲线那样陡峭。

于 2010-02-07T18:50:44.430 回答