安裝ASP.NET MVC 3安全更新KB2990942
後,它似乎MVC版本從3.0.0.0
增加到3.0.0.1
。這會導致Visual Studio不再查找引用。ASP.NET MVC安全修補程序版本3.0.0.1打破構建
<Reference Include="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
ReSharper的不顯示任何問題,但構建失敗,有很多未解決的MVC類型,並警告:
警告:無法解析此引用。找不到 程序集「System.Web.Mvc,Version = 3.0.0.0,Culture = neutral, PublicKeyToken = 31bf3856ad364e35,processorArchitecture = MSIL」。請檢查 確保程序集存在磁盤上。如果您的代碼需要此參考號爲 ,則可能會出現編譯錯誤。
這種說法很有道理。該版本不再存在於我的機器上。
我無法保證開發機器,構建服務器和生產服務器上的確切MVC版本。他們可能有3.0.0.0
或3.0.0.1
,這可能隨時改變。 Windows Update可能隨時發佈新的MVC版本。另外,每當發佈MVC更新時,我都不想增加所有* .csproj文件中的版本號。
多個版本的受更新:
- KB 2993939: Security Update for Microsoft ASP.NET MVC 2
- KB 2993937: Security Update for Microsoft ASP.NET MVC 3
- KB 2993928: Security Update for Microsoft ASP.NET MVC 4.0
- KB 2992080: Security Update for Microsoft ASP.NET MVC 5.0
的安全公告:MS14-059: Vulnerability in ASP.NET MVC Could Allow Security Feature Bypass (2990942)
處理這種情況的最佳方法是什麼?我如何在構建和生產過程中實現安全性,並在未來的MVC更新中保持安全?
與4.0.0.1相同的問題,我們只是重新引用了System.Web.Mvc。擁有更強大的參考解決方案會很好。 – Oliver 2014-10-16 14:31:46
您應至少能夠保證您的構建服務器和生產服務器在相同的環境中運行。開發機器可能會不同步,但您可以在出現這些問題時處理這些問題。您的構建服務器應該發現任何問題。 – Stijn 2014-10-16 14:45:33
@Stijn我打算這樣做,但我不能保證更新在同一時間發生。開發過程必須獨立工作幾周,無需人工關注。 – usr 2014-10-16 14:46:42