'dotnet restore' produz avisos de vulnerabilidade de segurança
O comando dotnet restore
, que restaura as dependências e ferramentas de um projeto, agora produz avisos sobre 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 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. Ao carregar uma solução ou projeto, ou executar um script de CI/CD, essa alteração poderá interromper seu fluxo de trabalho se <TreatWarningsAsErrors>
estiver habilitado.
Versão introduzida
.NET 8 versão prévia 4
Tipo de alteração interruptiva
Esta é uma alteração comportamental.
Motivo da alteração
Muitos usuários querem saber se os pacotes que restauram contêm vulnerabilidades de segurança conhecidas. Essa funcionalidade era um recurso altamente solicitado. As preocupações com a segurança continuam aumentando 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 interromper sua compilação devido a avisos, você pode considerar o uso de
<TreatWarningsAsErrors>
e utilizar<WarningsNotAsErrors>NU1901;NU1902;NU1903;NU1904</WarningsNotAsErrors>
para garantir que as vulnerabilidades de segurança conhecidas ainda sejam permitidas no seu ambiente.Se você deseja definir um nível de auditoria de segurança diferente, adicione a propriedade
<NuGetAuditLevel>
no seu arquivo do projeto com valores possíveis delow
,moderate
,high
ecritical
.Se você deseja ignorar esses avisos, pode utilizar
<NoWarn>
para suprimir os avisosNU1901-NU1904
.Para desabilitar totalmente o novo comportamento, você pode definir a propriedade de projeto
<NuGetAudit>
comofalse
.