代码之家  ›  专栏  ›  技术社区  ›  Damovisa

ASP.NET MVC是否适用于高度安全的面向公众的站点?

  •  3
  • Damovisa  · 技术社区  · 15 年前

    5 回复  |  直到 15 年前
        1
  •  8
  •   Community Neeleshkumar S    4 年前

    首先,微软会用他们的软件开发ASP.NETMVC框架 SDL processes 从一开始就包括安全。其次,它已经在一些流行网站上使用:

    Live.com/Hotmail

    上面的文档描述了Microsoft在其应用程序上使用ASP.net MVC的经验 live.com

    这个 stackoverflow 网站家族也运行ASP.NETMVC,获得大量流量。在播客中,有相当多的人提到了试图以各种方式颠覆网站的SO用户。它导致了 hacker badge .

    所以,如果您遵循最佳实践,使用它应该是完全安全的。

        2
  •  5
  •   Reed Copsey    15 年前

    ASP.NET MVC完全可以在面向公众的网站上使用。您只需要遵循标准的安全原则,但平台中的任何内容都不会阻止这一点。

        3
  •  2
  •   Dmytrii Nagirniak    15 年前

    应该避免ASP.NET MVC吗?

    有什么我需要知道的吗

    你应该注意的一件重要事情是 自动数据绑定
    如果你不看,这可能非常危险。

    更多信息I wrote in by blog here

        4
  •  1
  •   Community Neeleshkumar S    7 年前

    我最近一直在努力解决这个问题。我得出的结论是,除了在普通视图上显示数据库ID这一“讨厌”因素外,我相信ASP.NET/MVC应用程序没有理由不安全。

    Asp.NET MVC Customer Application

        5
  •  1
  •   dso    15 年前

    与任何新技术一样,您需要花一些时间学习MVC,以了解如何安全地使用它。由于它比ASP.NET web表单更为简单,如果不小心,您确实有更多机会攻击自己。

    • 使用WebForms,您通常不会担心跨站点请求伪造攻击,因为缓解措施是为您处理的(通过隐藏的viewstate数据)。使用ASP.NET MVC,您需要通过在表单中嵌入安全令牌并在控制器中验证来自行处理此问题。。。该框架提供了帮助程序(Html.AntiForgeryToken函数),但您仍然需要知道何时使用它。

    • MVC的自动模型绑定功能非常有用,但是您需要了解绑定是如何工作的,以防止潜在的恶意数据进入控制器。同样,MVC提供了缓解选项(显式绑定),但您仍然需要知道何时以及如何使用它。

    就安全性而言,我认为您使用的框架远不如全面了解一般安全问题以及您自己的应用程序的威胁模型重要。