ASP.NET MVC安全建议

时间:2009-03-08 21:58:24

标签: asp.net-mvc security

我最近创建了一个使用ASP.NET MVC的个人项目(撰写本文时为RC1)。我的背景是传统的ASP.NET WebForms开发。

我的知识ASP.NET MVC是有限的,所以我希望您提供有关如何最好地进行身份验证,输入验证和防止常见攻击(XSS,XSRF等)的输入。

我首先列出一些文章Stephen Walther posted on his blog

验证:



谢谢,
阿尼

1 个答案:

答案 0 :(得分:6)

脱离我的头顶(并且远未完成)......

  • 在所有表单上使用AntiForgeryToken以防止XSRF。使用单元测试确保接受POSTS的所有控制器操作都使用ValidateAntiForgeryToken属性进行修饰。

  • 尽可能利用HtmlHelper扩展程序来利用自动HTML编码。

  • 对所有数据库访问使用带参数化查询的ORM - 不是MVC独有的,但仍然相关。

  • 在您接受的最低要求的HTTP谓词中具有限制性。使用DELETE(vi AJAX)或POST进行删除操作。

  • 使用AuthorizeAttribute或从中派生的属性来保护非公开行为。

  • 不要在可能被缓存的网址中公开用户ID /密码(即通过表单POST而不是GET网址登录)。与往常一样,使用SSL传递敏感数据。