Compartir a través de


Advertencias de NuGet NU1901, NU1902, NU1903, NU1904

warning NU1902: Package 'NuGet.Protocol' 5.11.2 has a known moderate severity vulnerability, https://github.com/advisories/GHSA-g3q9-xf95-8hp5

El código de advertencia cambia en función del nivel de gravedad de vulnerabilidad conocido:

Código de advertencia Gravedad
NU1901 low
NU1902 Moderada
NU1903 high
NU1904 crítica

Problema

Un paquete restaurado para el proyecto tiene una vulnerabilidad conocida.

Para más información, consulte la documentación sobre paquetes de auditoría.

Solución

Es probable que la actualización a una versión más reciente del paquete resuelva la advertencia. Puede comprobar la dirección URL proporcionada por el aviso de vulnerabilidad para ver qué versiones del paquete se han corregido o comprobar los orígenes del paquete configurados para ver qué versiones del paquete están disponibles. La interfaz de usuario del administrador de paquetes de Visual Studio puede mostrar qué versiones de paquete se ven afectadas y cuáles no tienen vulnerabilidades conocidas.

Si no desea recibir una notificación de vulnerabilidades que sean menos graves que un nivel con el que se sienta cómodo, puede editar el archivo de proyecto y agregar una propiedad de MSBuild NuGetAuditLevel, con el valor establecido en low, moderate, high o critical. Por ejemplo, <NuGetAuditLevel>high</NuGetAuditLevel>.

Si estas advertencias provocan un error en la restauración porque usas TreatWarningsAsErrors, puedes agregar <WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors> para permitir que estos códigos permanezcan como advertencias.

Si no deseas que NuGet compruebe si hay paquetes con vulnerabilidades conocidas durante la restauración, agrega <NuGetAudit>false</NuGetAudit> dentro de un elemento <PropertyGroup> en el archivo de proyecto o un archivo Directory.Build.props.

Nota:

La versión inicial de NuGetAudit no proporciona una manera de suprimir avisos específicos (direcciones URL). Es una característica que pretendemos agregar en función de la priorización de otras mejoras.

Como mitigación, puede agregar un valor adecuado NoWarn a sus declaraciones PackageReference. Por ejemplo, <PackageReference Include="Contoso.Library" Version="1.0.0" NoWarn="NU1901" />. Sin embargo, tenga en cuenta que esto impedirá que se le notifiquen nuevas vulnerabilidades de la misma gravedad.