Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ASP.NET MVC新手-我需要重新学习安全性吗?_Asp.net_Asp.net Mvc_Security_Architecture_Paradigms - Fatal编程技术网

ASP.NET MVC新手-我需要重新学习安全性吗?

ASP.NET MVC新手-我需要重新学习安全性吗?,asp.net,asp.net-mvc,security,architecture,paradigms,Asp.net,Asp.net Mvc,Security,Architecture,Paradigms,我正在计划一个新项目的工作,现在想使用ASP.NETMVC。我的项目计划使用JQuery和AJAX(尽管也支持非JS客户端)。来自标准的ASP.NET背景,我仍在尝试了解MVC范式(在来自的巨大帮助下)。然而,我主要关心的是使用MVC的安全性。我用ASP.NET做了很多安全工作,我知道如何处理各种攻击向量。我需要重新学习ASP.NET MVC的安全性吗?是否有新的威胁,或者甚至是处理旧威胁的新方法,我必须仔细阅读?我订购了几本ASP.NETMVC书籍(其中有关于安全性的章节),但我想知道其他人对

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


谢谢

这取决于你所说的安全性

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

ViewState已经不存在了,所以您不需要担心ViewState验证或任何其他问题

如果你指的是XSS,我会说大致相同;您需要在输出上转义数据,这很容易做到:

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

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


因此,总的来说,我会说不,ASP.NET MVC中的安全性学习曲线不应该像体系结构本身的学习曲线那样陡峭。

谢谢,这使得克服学习曲线变得更容易。另一方面,如果我使用
UpdateModel()
,它会自动对数据进行HTMLEncode编码吗?我知道在传递模型对象时必须手动执行,但不太确定在使用UpdateModel时要执行什么操作。再次感谢。@tendousimpy:您只需要担心在退出时的编码/转义,因为您所呈现的数据可能来自不可信的来源。除了少数例外,没有必要对即将发生的事情进行清理(我假设您参数化了SQL查询等等)。但是,为了回答你的确切问题,不,<代码> UpDeMeDoDel[/CODEC]不HTML编码你的数据,因为你会在它被显示的时候对它编码两次,并且你的站点访问者会在单词中间看到奇怪的逃逸<代码> <代码> s。用ASP.NET MVC 2,<代码> < /代码>为你自动编码文本。注意
而不是
=
。是的,使用参数化查询。谢谢你的帮助!