Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
varning NU1902: Paketet "NuGet.Protocol" 5.11.2 har en känd måttlig allvarlighetsgrad, https://github.com/advisories/GHSA-g3q9-xf95-8hp5
Varningskoden ändras beroende på den kända allvarlighetsgraden för säkerhetsrisker:
| Warning Code | Severity |
|---|---|
| NU1901 | low |
| NU1902 | moderate |
| NU1903 | high |
| NU1904 | critical |
Issue
Ett paket som har återställts för projektet har en känd säkerhetsrisk.
Mer information finns i dokumentationen om granskningspaket.
Solution
Vi har ett blogginlägg med mer information om våra rekommenderade åtgärder när ditt projekt använder ett paket med en känd säkerhetsrisk och verktyg som kan hjälpa dig.
Det är troligt att du kan lösa varningen genom att uppgradera till en nyare version av paketet.
Om projektet inte refererar direkt till paketet (det är ett transitivt paket) dotnet nuget why kan du använda det för att förstå vilket paket som gjorde att det ingick i projektet.
Du kan kontrollera url:en som tillhandahålls av sårbarhetsrekommendatorn för att se vilka versioner av paketet som har åtgärdats eller kontrollera dina konfigurerade paketkällor för att se vilka versioner av paketet som är tillgängliga.
Visual Studios pakethanterargränssnitt kan visa vilka paketversioner som påverkas och vilka som inte har kända säkerhetsrisker.
Om dessa varningar orsakar att återställningen misslyckas eftersom du använder TreatWarningsAsErrorskan du lägga till <WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors> för att tillåta att dessa koder förblir som varningar.
Om du inte vill bli meddelad om säkerhetsrisker som är mindre allvarliga än en nivå som du är bekväm med kan du redigera projektfilen och lägga till en MSBuild-egenskap NuGetAuditLevel, med värdet inställt på low, moderate, higheller critical.
Till exempel <NuGetAuditLevel>high</NuGetAuditLevel>.
Om du vill utelämna en specifik rekommendation lägger du till ett MSBuild NuGetAuditSuppress-objekt .
Till exempel <NuGetAuditSuppress Include="https://github.com/advisories/GHSA-g3q9-xf95-8hp5" />.
NuGetAuditSuppress är tillgängligt från VS 17.11 och .NET 8.0.400 SDK för projekt som använder PackageReference, och från VS 17.12 för projekt som använder packages.config.
Om du inte vill att NuGet ska söka efter paket med kända säkerhetsrisker under återställningen lägger du till <NuGetAudit>false</NuGetAudit> i en <PropertyGroup> i projektfilen eller en Directory.Build.props fil.
Om du vill köra NuGet-granskning på utvecklardatorer, men inaktivera den på CI-pipelines, kan du dra nytta av MSBuild-import av miljövariabler och skapa en NuGetAudit-miljövariabel som anges i false pipelinedefinitionen.
För projekt som riktar sig till .NET 10-ramverket är allstandardinställningen för NuGetAuditMode .
Det innebär att NuGet rapporterar om transitiva paket med kända sårbarheter för alla ramverk i projektet.
Värdet kan uttryckligen anges till direct för att återgå till .NET 9:s standardvärde.