Nach der Installation des ASP.NET MVC 3-Sicherheitsupdates KB2990942
scheint die MVC-Version von 3.0.0.0
auf 3.0.0.1
erhöht. Dies führt dazu, dass Visual Studio die Referenz nicht mehr findet.ASP.NET MVC-Sicherheitspatch auf Version 3.0.0.1 bricht Build
<Reference Include="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
ReSharper zeigt keine Probleme, aber die Erstellung fehl mit vielen ungelösten MVC-Typen und eine Warnung:
Warnung: Könnte diese Referenz nicht lösen. Die Assembly konnte nicht gefunden werden "System.Web.Mvc, Version = 3.0.0.0, Culture = Neutral, PublicKeyToken = 31bf3856ad364e35, ProzessorArchitektur = MSIL". Überprüfen Sie auf stellen Sie sicher, dass die Assembly auf der Festplatte vorhanden ist. Wenn dieser Verweis von Ihrem Code erforderlich ist, können Sie Kompilierungsfehler erhalten.
Diese Art von macht Sinn. Diese Version existiert nicht mehr auf meinem Rechner.
Ich kann die genaue MVC-Version auf Dev-Maschinen, Build-Servern und Produktionsservern nicht garantieren. Sie könnten 3.0.0.0
oder 3.0.0.1
haben und dies könnte sich jederzeit ändern. Windows Update veröffentlicht möglicherweise zu einem beliebigen Zeitpunkt neue MVC-Versionen. Außerdem möchte ich nicht die Versionsnummer in allen * .csproj-Dateien erhöhen, wenn ein MVC-Update veröffentlicht wird.
Mehrere Versionen werden von dem Update betroffen:
- 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
Das Security Bulletin: MS14-059: Vulnerability in ASP.NET MVC Could Allow Security Feature Bypass (2990942)
Was ist der beste Weg, um mit dieser Situation umzugehen? Wie kann ich den Build und die Produktion unterbrechen und in Bezug auf zukünftige MVC-Updates sicher sein?
Gleiches Problem heute mit 4.0.0.1, wir referenziert nur System.Web.Mvc. Wäre schön, eine robustere Referenzierungslösung zu haben. – Oliver
Sie sollten zumindest garantieren können, dass Ihre Build-Server und Produktionsserver in einer identischen Umgebung ausgeführt werden. Dev-Maschinen können nicht mehr synchron laufen, aber Sie können solche Probleme beheben, wenn sie auftreten. Ihre Build-Server sollten Probleme aufdecken. – Stijn
@Stijn Ich plane das zu tun, aber ich kann nicht garantieren, dass Aktualisierungen zur genau gleichen Zeit stattfinden. Der Entwicklungsprozess muss einige Wochen ohne manuelle Aufmerksamkeit von selbst funktionieren. – usr