Use a auditoria npm para detetar e corrigir vulnerabilidades do pacote
Serviços de DevOps do Azure
O comando npm audit executa uma verificação completa do seu projeto, identificando possíveis vulnerabilidades de segurança e gerando um relatório detalhado que destaca quaisquer problemas encontrados. A realização de auditorias de segurança é uma etapa vital no reconhecimento e resolução de vulnerabilidades dentro das dependências do projeto. O comando npm audit fix resolve automaticamente as vulnerabilidades detetadas, atualizando versões de pacotes inseguros para as versões seguras mais recentes. Abordar essas vulnerabilidades é crucial para evitar possíveis problemas, como perda de dados, interrupções de serviço e acesso não autorizado a informações confidenciais.
Aviso
A execução da auditoria npm transmitirá os nomes de todos os pacotes especificados em seu package.json para o registro público.
Executar auditoria npm localmente
npm audit
pode ser executado localmente sem a necessidade de autenticação com seu feed. Isso permite que você analise seu projeto em busca de vulnerabilidades e receba um relatório detalhado sobre os problemas de segurança detetados e sua gravidade.
Se quiser corrigir as vulnerabilidades detetadas, pode executar npm audit fix
o , mas tem de ser autenticado com o feed para o fazer. Este comando atualiza as versões inseguras do pacote para as versões seguras mais recentes disponíveis.
Quando você executa a correção de auditoria npm, ela não apenas atualiza a package.json e a package-lock.json do projeto local, mas também sincroniza essas alterações com o feed de Artefatos do Azure associado. As versões recém-protegidas dos pacotes estarão automaticamente disponíveis no seu feed.
Essa sincronização garante que outros projetos que compartilham o mesmo feed também se beneficiarão dessas atualizações. Ele ajuda a manter um conjunto consistente e seguro de versões de pacotes em todos os projetos.
Execute o seguinte comando no diretório do projeto para executar uma auditoria npm:
npm audit
Se você quiser tentar atualizar para versões de pacote não vulneráveis, certifique-se de estar conectado ao feed primeiro e, em seguida, execute o seguinte comando no diretório do projeto:
npm audit fix
Depois de executar a correção de auditoria npm, certifique-se de realizar um teste completo em seu aplicativo para confirmar se as atualizações não introduziram nenhuma alteração de quebra. Se uma correção exigir uma atualização de versão principal, é recomendável revisar as notas de versão do pacote para verificar possíveis alterações de quebra. Lembre-se de que, embora um pacote privado com dependências públicas vulneráveis receba alertas de vulnerabilidade, ele não receberá correções por meio da correção de auditoria npm.
Nota
A auditoria do npm é executada automaticamente a cada execução da instalação do npm, mas só funciona para pacotes públicos.
Executar auditoria npm a partir do seu pipeline
Atualmente, o Azure Pipelines não oferece suporte à auditoria npm. Se você tentar usar o comando regular npm audit em seu pipeline, ele falhará. Em vez disso, execute a auditoria npm com o argumento --registry e forneça a URL de origem do feed.
Entre em sua organização do Azure DevOps e navegue até seu projeto.
Selecione Pipelines, selecione seu pipeline e, em seguida, selecione Editar para modificá-lo.
Na definição de pipeline, selecione o
+
sinal para adicionar uma nova tarefa.Procure a tarefa npm e selecione Adicionar para adicioná-la ao seu pipeline.
Insira um Nome para exibição para sua tarefa e selecione personalizado no menu suspenso Comando .
Cole o comando personalizado na caixa de texto Comando e argumentos :
Use o comando a seguir para executar uma auditoria npm e verificar vulnerabilidades de pacote. Substitua o espaço reservado pelo URL de origem do feed:
audit --registry=<FEED_SOURCE_URL>
Se você quiser tentar atualizar para versões de pacote não vulneráveis, use o seguinte comando. Substitua o espaço reservado pelo URL de origem do feed:
audit fix --registry=<FEED_SOURCE_URL>