'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.
Ação recomendada
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 delow
,moderate
,high
ecritical
.Se você quiser ignorar esses avisos, você pode usar
<NoWarn>
para suprimirNU1901-NU1904
avisos.Para desativar totalmente o novo comportamento, você pode definir a propriedade project
<NuGetAudit>
comofalse
.