Sobre a análise de dependência
Revisão de dependências ajuda você a entender as alterações de dependência e o impacto de segurança dessas alterações em cada pull request. Ele fornece uma visualização facilmente compreensível de mudanças de dependência, com um diff avançado na aba "Arquivos alterados" de uma solicitação de pull. A revisão de dependências informa você:
- Quais dependências foram adicionadas, removidas ou atualizadas, junto com as datas de versão.
- Quantos projetos usam esses componentes.
- Dados de vulnerabilidade para essas dependências.
Para solicitações de pull que contêm alterações em manifestos de pacote ou arquivos de bloqueio, você poderá exibir uma revisão de dependência para ver o que foi alterado. A revisão de dependências inclui detalhes de alterações nas dependências indiretas nos arquivos de bloqueio, e informa a você se alguma das dependências adicionadas ou atualizadas contém vulnerabilidades conhecidas.
Às vezes, você pode apenas querer atualizar a versão de uma dependência em um manifesto e gerar um pull request. No entanto, se a versão atualizada desta dependência direta também atualizou as dependências, seu pull request pode ter mais alterações do que o esperado. A revisão de dependência para cada manifesto e arquivo de bloqueio fornece uma maneira fácil de ver o que foi alterado e se alguma das novas versões de dependências contém vulnerabilidades conhecidas.
Ao verificar as revisões de dependências em um pull request e alterar todas as dependências sinalizadas como vulneráveis, você pode evitar que vulnerabilidades sejam adicionadas ao seu projeto. Para obter mais informações sobre como funciona a revisão de dependências, confira "Revendo alterações de dependência em um pull request".
Para obter mais informações sobre como configurar a revisão de dependências, confira "Configuração da revisão de dependência".
Dependabot alerts encontrará vulnerabilidades que já estão nas suas dependências, mas é muito melhor evitar a introdução de possíveis problemas do que corrigir problemas em uma data posterior. Para obter mais informações sobre Dependabot alerts, confira "Sobre alertas do Dependabot".
A revisão de dependências é compatível com as mesmas linguagens e os mesmos ecossistemas de gestão de pacotes do gráfico de dependência. Para obter mais informações, confira "Sobre o gráfico de dependências".
Para obter mais informações sobre os recursos da cadeia de fornecedores disponíveis no GitHub Enterprise Server, confira "Sobre a segurança da cadeia de suprimento".
Habilitar revisão de dependências
O recurso de revisão de dependências é disponibilizado quando você habilitar o gráfico de dependências. Para obter mais informações, confira "Como habilitar o grafo de dependência para sua empresa".
Imposição da revisão de dependência
A ação está disponível para todos os que têm o GitHub Advanced Security habilitado.
Proprietários de empresas e pessoas com acesso de administrador a um repositório podem adicionar o ação de revisão de dependência à empresa e ao repositório, respectivamente.
Você pode usar dependency-review-action
no seu repositório para impor revisões de dependência nas pull requests. A ação examina versões vulneráveis de dependências introduzidas por alterações de versão do pacote em solicitações de pull e avisa você sobre as vulnerabilidades de segurança associadas. Isso oferece uma melhor visibilidade do que está mudando em uma solicitação de pull e ajuda a evitar que vulnerabilidades sejam adicionadas ao repositório.
Por padrão, a verificação do ação de revisão de dependência falhará se descobrir pacotes vulneráveis. Uma verificação com falha impede que uma solicitação de pull seja mesclada quando o proprietário do repositório exigir que a verificação de análise de dependência seja aprovada. Para obter mais informações, confira "Sobre branches protegidos".
A ação usa a API REST de Revisão de Dependência para obter a comparação das alterações de dependência entre o commit base e o commit principal. Use a API de revisão de dependência para obter a comparação das alterações de dependência,entre os dois commits em um repositório, incluindo dados de vulnerabilidade. Para obter mais informações, consulte "Pontos de extremidade da API REST para revisão de dependências".