Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.
Atualmente o GitHub AE está em versão limitada.

Gerenciamento de alertas de varredura de código para seu repositório

Na exibição de segurança, , você pode ver, corrigir, ignorar ou excluir alertas de possíveis vulnerabilidades ou erros no código do projeto.

Quem pode usar esse recurso

If you have write permission to a repository you can manage code scanning alerts for that repository.

A Code scanning está disponível para os repositórios pertencentes à organização do GitHub AE. Esse é um recurso do GitHub Advanced Security (gratuito durante a versão beta). Para obter mais informações, confira "Sobre a Segurança Avançada do GitHub".

Visualizar os alertas de um repositório

Qualquer pessoa com permissão de leitura para um repositório pode ver anotações de code scanning em pull requests. Para obter mais informações, confira "Alertas de varredura de código de triagem em pull requests".

Você precisa ter a permissão de gravação para ver um resumo de todos os alertas de um repositório na guia Segurança.

Por padrão, a página de verificação de código de alertas é filtrada para mostrar alertas apenas para o branch padrão do repositório.

  1. No sua empresa, navegue até a página principal do repositório. 1. Abaixo do nome do repositório, clique em Segurança. Caso não consiga ver a guia "Segurança", selecione o menu suspenso e clique em Segurança. Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Segurança" é realçada por um contorno laranja escuro. 1. Na barra lateral esquerda, clique em Alertas da verificação de código. Guia "Alertas da verificação de código"

  2. Opcionalmente, use a caixa de pesquisa de texto livre ou os menus suspensos para filtrar alertas. Por exemplo, você pode filtrar pela ferramenta usada para identificar alertas. Filtrar por ferramenta 1. Em "Code scanning", clique no alerta que deseja explorar. Resumo dos alertas

    O status e os detalhes na página de alerta refletem apenas o estado do alerta no branch padrão do repositório, mesmo que o alerta exista em outros branches. Você pode ver o status do alerta em branches não padrão na seção Branches afetados no lado direito da página de alerta. Se um alerta não existir no branch padrão, o status do alerta será exibido como "na solicitação de pull" ou "no branch" e será cinza. A seção "Ramificações afetadas" em um alerta

  3. Opcionalmente, se o alerta realçar um problema com o fluxo de dados, clique em Mostrar caminhos para exibir o caminho da fonte de dados até o coletor em que é usado. O link "Mostrar caminhos" em um alerta

  4. Alertas da análise de CodeQL incluem uma descrição do problema. Clique em Mostrar mais para obter diretrizes sobre como corrigir o código. Detalhes de um alerta

Para obter mais informações, confira "Sobre alertas de digitalização de códigos".

Observação: para a análise da code scanning com o CodeQL, você pode ver informações sobre a última execução em um cabeçalho na parte superior da lista de alertas da code scanning do repositório.

Por exemplo, você pode ver quando o último scanner foi executada, o número de linhas de código analisadas em comparação com o número total de linhas de código no seu repositório, e o número total de alertas gerados. Banner da interface do usuário

Filtrando alertas de code scanning

Você pode filtrar os alertas exibidos no modo de exibição de alertas de code scanning. Isso é útil caso haja muitos alertas pois você pode se concentrar em um determinado tipo de alerta. Existem alguns filtros predefinidos e uma série de palavras-chave que você pode usar para refinar a lista de alertas exibidos.

  • Para usar um filtro predefinido, clique em Filtros ou em um filtro mostrado no cabeçalho da lista de alertas e escolha um filtro na lista suspensa. Filtros predefinidos
  • Para usar uma palavra-chave, digite diretamente na caixa de texto dos filtros ou:
    1. Clique na caixa de filtros para exibir uma lista de todas as palavras-chave de filtro disponíveis.
    2. Clique na palavra-chave que deseja usar e, em seguida, selecione um valor na lista suspensa. Lista de filtros de palavra-chave

O benefício de usar filtros de palavra-chave é que apenas os valores com resultados são exibidos nas listas suspensas. Isso facilita evitar filtros de configuração que não encontram resultados.

Se você inserir vários filtros, a exibição mostrará os alertas que correspondem a todos esses filtros. Por exemplo, is:closed severity:high branch:main exibirá apenas os alertas de alta gravidade fechados presentes no branch main. A exceção a isso são filtros relacionados a referências (ref, branch e pr): is:open branch:main branch:next mostrará os alertas abertos dos branches maine next.

Observe que, se você tiver filtrado os alertas em um branch não padrão, mas os mesmos alertas existirem no branch padrão, a página de qualquer alerta especificado ainda refletirá apenas o status do alerta no branch padrão, mesmo que esse status entre em conflito com o status em um branch não padrão. Por exemplo, um alerta exibido na lista "Abrir" no resumo dos alertas de branch-x pode mostrar o status "Corrigido" na página do alerta, caso o alerta já esteja corrigido no branch padrão. Veja o status do alerta para o branch na seção Branches afetados no lado direito da página de alerta.

Restringir resultados apenas ao código do aplicativo

Use o filtro "Apenas alertas no código do aplicativo" ou a palavra-chave autofilter:true e o valor para restringir os resultados aos alertas no código do aplicativo. Confira "Sobre os rótulos de alertas que não estão no código do aplicativo" acima para obter mais informações sobre os tipos de código que não são o código do aplicativo.

Rastreando alertas de code scanning em problemas

Observação: o acompanhamento dos alertas da code scanning em problemas está em versão beta e sujeito a alterações.

Esse recurso dá suporte à execução de análise nativamente por meio do GitHub Actions ou externamente por meio da infraestrutura de CI/CD existente, bem como ferramentas da code scanning de terceiros, mas não ferramentas de acompanhamento de terceiros.

Os alertas do Code scanning se integram às listas de tarefas do GitHub Issues para facilitar a priorização e o acompanhamento de alertas com todo o seu trabalho de desenvolvimento. Para obter mais informações sobre problemas, confira "[AUTOTITLE](/issues/tracking-your-work-with-issues/about-issues)."

Para acompanhar um alerta da verificação de código em um problema, adicione a URL do alerta como um item da lista de tarefas no problema. Para obter mais informações sobre listas de tarefas, confira "Sobre listas de tarefas". Para obter mais informações sobre como criar problemas para rastrear os alertas da code scanning, confira "Rastreamento código de alerta em problemas que usam listas de tarefas."

Corrigir um alerta

Qualquer pessoa com permissão de gravação para um repositório pode corrigir um alerta, fazendo o commit de uma correção do código. Se o repositório tiver code scanning agendado para ser executado em pull requests, recomenda-se registrar um pull request com sua correção. Isso ativará a análise de code scanning referente às alterações e irá testar se sua correção não apresenta nenhum problema novo. Para obter mais informações, confira "Como personalizar a verificação de código" e "Alertas de varredura de código de triagem em pull requests."

Se você tem a permissão de gravação em um repositório, visualize os alertas corrigidos vendo o resumo de alertas e clicando em Fechados. Para obter mais informações, confira "Como ver os alertas de um repositório". A lista "Fechado" mostra alertas e alertas corrigidos que os usuários ignoraram.

Você pode usar a pesquisa de texto livre ou os filtros para ver um subconjunto de alertas e depois marcar todos os alertas correspondentes como fechados.

Alertas podem ser corrigidos em um branch, mas não em outro. Você pode usar o filtro "Branch", no resumo dos alertas, para verificar se um alerta é corrigido em um branch específico.

Filtrar alertas por branch

Observe que, se você tiver filtrado os alertas em um branch não padrão, mas os mesmos alertas existirem no branch padrão, a página de qualquer alerta especificado ainda refletirá apenas o status do alerta no branch padrão, mesmo que esse status entre em conflito com o status em um branch não padrão. Por exemplo, um alerta exibido na lista "Abrir" no resumo dos alertas de branch-x pode mostrar o status "Corrigido" na página do alerta, caso o alerta já esteja corrigido no branch padrão. Veja o status do alerta para o branch na seção Branches afetados no lado direito da página de alerta.

Observação: Se você executar a code scanning usando várias configurações, às vezes, um alerta terá várias origens de análise. A menos que você execute todas as configurações regularmente, poderá ver alertas corrigidos em uma origem de análise, mas não em outra. Para obter mais informações, confira "Sobre alertas de digitalização de códigos".

## Como ignorar ou excluir alertas

Há duas formas de fechar um alerta. Você pode corrigir o problema no código ou pode ignorar o alerta. Como alternativa, se você tiver permissões de administrador no repositório, poderá excluir alertas. Excluir alertas é útil em situações em que você configurou uma ferramenta code scanning e, em seguida, decidiu removê-la ou em situações em que você configurou a análise de CodeQL com um conjunto de consultas maior do que você deseja continuar usando, e, em seguida, você removeu algumas consultas da ferramenta. Em ambos os casos, excluir alertas permite limpar os seus resultados de code scanning. Exclua os alertas da lista de resumo na guia Segurança.

Ignorar um alerta é uma maneira de fechar um alerta que você não acha que precisa ser corrigido. Por exemplo, um erro no código que é usado apenas para testes ou quando o esforço de corrigir o erro é maior do que o benefício potencial de melhorar o código. Você pode ignorar alertas de anotações da code scanning no código ou na lista de resumo na guia Segurança.

Ao descartar um alerta:

  • Ele é ignorado em todos os branches.
  • O alerta é removido do número de alertas atuais para o seu projeto.
  • O alerta é movido para a lista "Fechado" no resumo dos alertas, onde você pode reabri-lo, se necessário.
  • O motivo pelo qual você fechou o alerta é registrado.
  • Opcionalmente, você pode fazer um comentário para registrar o contexto de um alerta ignorado.
  • Da próxima vez que code scanning for executado, o mesmo código não gerará um alerta.

Quando você exclui um alerta:

  • Ele é excluído em todos os branches.
  • O alerta é removido do número de alertas atuais para o seu projeto.
  • Ele não é adicionado à lista "Fechados" no resumo dos alertas.
  • Se o código que gerou o alerta permanecer o mesmo, e a mesma ferramenta code scanning for executada novamente sem qualquer alteração de configuração, o alerta será exibido novamente nos resultados das análises.

Para ignorar ou excluir alertas :

  1. No sua empresa, navegue até a página principal do repositório. 1. Abaixo do nome do repositório, clique em Segurança. Caso não consiga ver a guia "Segurança", selecione o menu suspenso e clique em Segurança. Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Segurança" é realçada por um contorno laranja escuro. 1. Na barra lateral esquerda, clique em Alertas da verificação de código. Guia "Alertas da verificação de código"

  2. Se você tem permissões de administrador no repositório e deseja excluir alertas para esta ferramenta de code scanning, selecione algumas ou todas as caixas de seleção e clique em Excluir.

    Excluir alertas

    Opcionalmente, você pode usar a pesquisa de texto livre e os filtros para ver um subconjunto de alertas e depois excluir todos os alertas correspondentes de uma só vez. Por exemplo, se você removeu uma consulta da análise de CodeQL, você pode usar o filtro "Regra" para listar apenas os alertas dessa consulta e, em seguida, selecionar e apagar todos esses alertas.

    Filtrar alertas por regra

  3. Se você deseja ignorar um alerta, é importante explorar primeiro o alerta para que você possa escolher o motivo correto para ignorá-lo. Clique no alerta que você deseja explorar. Abra um alerta da lista de resumo

  4. Revise o alerta, clique em Ignorar alerta e escolha ou digite um motivo para fechá-lo. Captura de tela do alerta de verificação de código com um menu suspenso para escolher o motivo enfatizado do alerta ignorado É importante escolher o motivo apropriado no menu suspenso, pois isso pode afetar se uma consulta continua sendo incluída em análise futura. Opcionalmente, você pode comentar sobre um alerta ignorado para registrar o contexto dele. O comentário sobre o alerta ignorado é adicionado à linha do tempo do alerta e pode ser usado como justificativa em auditorias e relatórios. Você pode recuperar ou definir um comentário usando a API REST de verificação de código. O comentário está contido no dismissed_comment do ponto de extremidade alerts/{alert_number}. Para obter mais informações, confira "Verificação de código".

    Se você ignorar um alerta de CodeQL como um falso resultado positivo, por exemplo, porque o código usa uma biblioteca de sanitização incompatível, considere contribuir para o repositório de CodeQL e melhorar a análise. Para obter mais informações sobre CodeQL, confira "Contribuir para CodeQL".

Ignorar múltiplos alertas de uma vez

Se um projeto tem vários alertas que você deseja ignorar pelo mesmo motivo, você pode ignorá-los em massa do resumo de alertas. Normalmente, você pode querer filtrar a lista e, em seguida, ignorar todos os alertas correspondentes. Por exemplo, você pode querer ignorar todos os alertas atuais no projeto que foram marcados para uma vulnerabilidade específica de Enumeração de Fraqueza Comum (CWE).

Como auditar as respostas aos alertas da code scanning

Você pode auditar as ações executadas em resposta aos alertas do code scanning usando as ferramentas do GitHub. Para obter mais informações, confira "Alertas de segurança de auditoria".

Leitura adicional