Partilhar via


'Dotnet Restore' produz avisos de vulnerabilidade de segurança

O dotnet restore comando, que restaura as dependências e ferramentas de um projeto, agora produz avisos de vulnerabilidade de segurança por padrão.

Comportamento anterior

Anteriormente, dotnet restore não emitia nenhum aviso de vulnerabilidade de segurança por padrão.

Novo comportamento

Se você estiver desenvolvendo com o SDK do .NET 8 ou uma versão posterior, dotnet restore produz avisos de vulnerabilidade de segurança por padrão para todos os projetos restaurados. Quando você carrega uma solução ou projeto, ou executa um script CI/CD, essa alteração pode interromper seu fluxo de trabalho se você tiver <TreatWarningsAsErrors> habilitado.

Versão introduzida

.NET 8 Visualização 4

Tipo de mudança de rutura

Esta mudança é uma mudança comportamental.

Razão para a alteração

Muitos utilizadores querem saber se os pacotes que restauram contêm vulnerabilidades de segurança conhecidas. Esta funcionalidade era uma funcionalidade muito solicitada. As preocupações com a segurança continuam a aumentar a cada ano e alguns problemas de segurança conhecidos não são visíveis o suficiente para tomar medidas imediatas.

  • Para reduzir explicitamente a probabilidade de isso quebrar sua compilação devido a avisos, você pode considerar seu uso <TreatWarningsAsErrors> e uso <WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors> para garantir que vulnerabilidades de segurança conhecidas ainda sejam permitidas em seu ambiente.

  • Se você quiser definir um nível de auditoria de segurança diferente, adicione a <NuGetAuditLevel> propriedade ao seu arquivo de projeto com possíveis valores de low, moderate, highe critical.

  • Se você quiser ignorar esses avisos, você pode usar <NoWarn> para suprimir NU1901-NU1904 avisos.

  • Para desativar totalmente o novo comportamento, você pode definir a propriedade project <NuGetAudit> como false.

Consulte também