Freigeben über


„dotnet restore“ erzeugt Sicherheitsrisikowarnungen

Der dotnet restore-Befehl, mit dem die Abhängigkeiten und Tools eines Projekts wiederhergestellt werden, erzeugt jetzt standardmäßig Sicherheitsrisikowarnungen.

Vorheriges Verhalten

Bisher hat dotnet restore nicht standardmäßig Sicherheitsrisikowarnungen ausgegeben.

Neues Verhalten

Wenn Sie mit dem .NET 8-SDK oder einer höheren Version entwickeln, wird dotnet restore standardmäßig Sicherheitsrisikowarnungen für alle wiederhergestellten Projekte generieren. Wenn Sie eine Lösung oder ein Projekt laden oder ein CI/CD-Skript ausführen, kann diese Änderung ihren Workflow unterbrechen, wenn Sie <TreatWarningsAsErrors> aktiviert haben.

Eingeführt in Version

.NET 8 Vorschauversion 4

Typ des Breaking Changes

Diese Änderung ist eine Verhaltensänderung.

Grund für die Änderung

Viele Benutzer möchten wissen, ob die Pakete, die sie wiederherstellen, bekannte Sicherheitsrisiken enthalten. Diese Funktion wurde sehr oft angefragt. Sicherheitsbedenken werden von Jahr zu Jahr größer, und einige bekannte Sicherheitsprobleme sind nicht sichtbar genug, um sofortige Maßnahmen zu ergreifen.

  • Um die Wahrscheinlichkeit explizit zu verringern, dass ihr Build aufgrund von Warnungen abgebrochen wird, sollten Sie Ihre Verwendung von <TreatWarningsAsErrors> überdenken und <WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors> verwenden, um sicherzustellen, dass bekannte Sicherheitsrisiken weiterhin in Ihrer Umgebung zulässig sind.

  • Wenn Sie eine andere Sicherheitsüberwachungsstufe festlegen möchten, fügen Sie Ihrer Projektdatei die <NuGetAuditLevel>-Eigenschaft mit möglichen Werten von low, moderate, high und critical hinzu.

  • Wenn Sie diese Warnungen ignorieren möchten, können Sie <NoWarn> verwenden, um NU1901-NU1904-Warnungen unterdrücken.

  • Um das neue Verhalten vollständig zu deaktivieren, können Sie die <NuGetAudit>-Projekteigenschaft auf false festlegen.

Weitere Informationen