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.

Como configurar a verificação de código para um repositório

Você pode configurar a code scanning para um repositório para encontrar vulnerabilidades de segurança em seu código.

Quem pode usar esse recurso

If you have write permissions to a repository, you can configure code scanning for that repository.

A Code scanning está disponível para todos os repositórios públicos do GitHub.com. Para usar code scanning em um repositório privado pertencente a uma organização, você precisa ter um licença do GitHub Advanced Security. Para obter mais informações, confira "Sobre a Segurança Avançada do GitHub".

Opções para configurar a code scanning

Você decide como gerar alertas de code scanning e quais ferramentas usar no nível de um repositório. O GitHub Enterprise Cloud fornece suporte totalmente integrado para a análise do CodeQL e também é compatível com ferramentas de análise usando ferramentas de terceiros. Para obter mais informações, confira os marcadores a seguir e "Sobre a varredura de código".

Como configurar automaticamente a code scanning

A configuração padrão para a code scanning configurará automaticamente code scanning com as melhores configurações para seu repositório. Seu repositório estará qualificado para configuração padrão se usar GitHub Actions e contiver apenas as seguintes linguagens de programação compatíveis com CodeQL: JavaScript/TypeScript, Python ou Ruby. Embora você possa usar a configuração padrão se o repositório incluir linguagens que não têm suporte no CodeQL, como R, você deverá usar a configuração avançada se incluir linguagens de programação compatíveis com CodeQL diferentes daquelas listadas anteriormente. Para obter mais informações sobre as linguagens com suporte no CodeQL, confira "Sobre a varredura de código com CodeQL".

Habilitar a configuração padrão é a maneira mais rápida de configurar a code scanning para seu repositório. Além disso, a configuração padrão não exige nada da manutenção necessária com um arquivo de fluxo de trabalho do CodeQL. Antes de habilitar a configuração padrão, você verá as linguagens de programação que ele analisará, os conjuntos de consultas que ele executará e os eventos que dispararão uma nova verificação.

Experimente a configuração padrão se você não precisar executar consultas extras, alterar o agendamento de verificação ou verificar uma linguagem de programação que atualmente é incompatível com a configuração padrão.

  1. No GitHub.com, navegue até a página principal do repositório. 1. Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia suspensa "Configurações", selecione o menu suspenso e clique em Configurações.

    Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Configurações" é realçada por um contorno laranja escuro.

  2. Na seção "Segurança" da barra lateral, clique em Segurança e análise de código.

  3. Na seção "", selecione Configurar e clique em Padrão.

    Captura de tela da seção "" das configurações de "Segurança e análise de código". O botão "Configuração padrão" é realçado com um contorno laranja.

  4. Na janela de configuração padrão exibida do CodeQL, examine as configurações do repositório e clique em Habilitar o CodeQL .

    Observações:

    • A janela de configuração padrão do CodeQL exibe os detalhes da configuração padrão, incluindo as linguagens a serem analisadas, os conjuntos de consultas a serem executados e os eventos que disparam uma nova verificação. Se quiser alterar quais conjuntos de consultas serão executados, quais eventos dispararão uma nova verificação ou outros recursos da code scanning, você precisará usar a configuração avançada. Para obter mais informações, confira "Como configurar a verificação de código para um repositório".
    • Se você estiver mudando da configuração avançada para a configuração padrão, verá um aviso informando que a configuração padrão substituirá as configurações existentes. Depois de habilitar o CodeQL, exclua ou desabilite o arquivo de fluxo de trabalho existente. Caso contrário, o fluxo de trabalho continuará a ser executado regularmente sem carregar nenhum resultado da code scanning, usando seus minutos de GitHub Actions.
    • Se você quiser ver sua configuração padrão do CodeQL após a instalação, selecione e clique em Exibir configuração do CodeQL .

Como criar uma configuração avançada

A configuração avançada para a code scanning é útil quando você precisa personalizar seus dados de code scanning. Ao criar e editar um arquivo de fluxo de trabalho, você pode escolher quais consultas executar, alterar o agendamento de verificação, verificar qualquer linguagem com suporte a CodeQL, usar um build de matriz e muito mais.

Configurar code scanning usando fluxos de trabalho iniciais

Observação: os fluxos de trabalho iniciais do Advanced Security foram consolidados em uma categoria "Segurança" na guia Ações de um repositório. Atualmente, a nova configuração está em versão beta e sujeita a alterações.

O GitHub Enterprise Cloud fornece fluxos de trabalho iniciais para recursos de segurança como code scanning. Você pode usar esses fluxos de trabalho sugeridos para construir seus fluxos de trabalho de code scanning, ao invés de começar do zero. Os fluxos de trabalho iniciais de estão disponíveis apenas para o seu repositório se code scanning estiver habilitado.

O uso de ações para executar a code scanning usará minutos. Para obter mais informações, confira "Sobre a cobrança das GitHub Actions".

  1. No GitHub.com, navegue até a página principal do repositório. 1. Abaixo do nome do repositório, clique em Actions. Guia Actions no menu de navegação do repositório principal
  2. Se o repositório já tiver pelo menos um fluxo de trabalho configurado e em execução, clique em Novo fluxo de trabalho para exibir os fluxos de trabalho iniciais. Se, atualmente, não houver fluxos de trabalho configurados para o repositório, vá para a próxima etapa. Captura de tela da guia Ações de um repositório. O botão "Novo fluxo de trabalho" é realçado com um contorno laranja
  3. Na exibição "Escolher um fluxo de trabalho" ou "Introdução ao GitHub Actions", role para baixo até a categoria "Segurança" e clique em Configurar no fluxo de trabalho que você deseja configurar. Talvez seja necessário clicar em Exibir tudo para localizar o fluxo de trabalho de segurança que deseja configurar. Captura de tela da categoria Segurança dos fluxos de trabalho iniciais. O botão Configurar e o link "Exibir tudo" são realçados com um contorno laranja.
  4. Siga as instruções no fluxo de trabalho para personalizá-lo de acordo com suas necessidades. Para obter mais assistência geral sobre fluxos de trabalho, clique em Documentação no painel direito da página de fluxo de trabalho. Captura de tela mostrando um arquivo de fluxo de trabalho inicial aberto para edição. O botão "Documentação" é realçado com um contorno laranja. Para obter mais informações, confira "Usando fluxos de trabalho iniciais" e "Como personalizar a verificação de código."

Como configurar manualmente a code scanning

Você pode personalizar sua code scanning criando e editando um arquivo de fluxo de trabalho. A configuração avançada gera um arquivo de fluxo de trabalho básico para você personalizar.

O uso de ações para executar a code scanning usará minutos. Para obter mais informações, confira "Sobre a cobrança das GitHub Actions".

  1. No GitHub.com, navegue até a página principal do repositório. 1. Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia suspensa "Configurações", selecione o menu suspenso e clique em Configurações.

    Captura de tela de um cabeçalho de repositório que mostra as guias. A guia "Configurações" é realçada por um contorno laranja escuro.

  2. Na seção "Segurança" da barra lateral, clique em Segurança e análise de código.

  3. Role para baixo até a seção "", selecione Configurar e clique em Avançado.

    Observação: Se você estiver mudando para a configuração avançada da code scanning da configuração padrão, na seção "", selecione e clique em Alternar para avançado. Na janela pop-up exibida, clique em Desabilitar CodeQL .

    Captura de tela da seção "" das configurações de "Segurança e análise de código". O botão "Configuração avançada" é realçado com um contorno laranja.

  4. Para personalizar como code scanning faz a varredura do seu código, edite o fluxo de trabalho.

    Geralmente, você pode fazer commit do Fluxo de trabalho de análise do CodeQL sem fazer nenhuma alteração a ele. No entanto, muitos dos fluxos de trabalho de terceiros exigem configuração adicional, portanto, leia os comentários no fluxo de trabalho antes de fazer commit.

    Para obter mais informações, confira "Como personalizar a verificação de código".

  5. Clique na lista suspensa Iniciar commit e digite uma mensagem de commit. Iniciar commit

  6. Escolha se você gostaria de confirmar diretamente na ramificação padrão ou criar uma ramificação e iniciar uma solicitação de pull. Escolher o local do commit

  7. Clique em Confirmar novo arquivo ou Propor novo arquivo.

No Fluxo de trabalho de análise do CodeQL sugerido, a code scanning está configurada para analisar o código cada vez que você efetua push de uma alteração para a ramificação padrão ou para qualquer ramificação protegida ou quando aciona uma solicitação de pull na ramificação padrão. Como resultado, code scanning vai começar agora.

Os gatilhos on:pull_request e on:push para varredura de código são úteis para finalidades diferentes. Para obter mais informações, confira "Como personalizar a verificação de código".

Configuração em lote da code scanning

Você pode configurar a code scanning em vários repositórios de uma vez usando um script. Caso deseje usar um script para gerar solicitações de pull que adicionam um fluxo de trabalho do GitHub Actions a vários repositórios, confira o repositório jhutchings1/Create-ActionsPRs para ver um exemplo do uso do PowerShell ou nickliffen/ghas-enablement para as equipes que não têm o PowerShell e desejam usar o NodeJS.

Visualizar a saída do registro de code scanning

Depois de configurar a code scanning para seu repositório, você poderá inspecionar a saída das ações conforme forem executadas.

  1. Abaixo do nome do repositório, clique em Actions. Guia Actions no menu de navegação do repositório principal

    Você verá uma lista que inclui uma entrada para executar o fluxo de trabalho de code scanning. O texto da entrada é o título que você deu à sua mensagem de commit.

    Lista de ações que mostram o fluxo de trabalho de code scanning

  2. Clique na entrada para o fluxo de trabalho de code scanning.

  3. Clique no nome do trabalho à esquerda. Por exemplo, Analisar (LANGUAGE) .

    Saída do log do fluxo de trabalho de code scanning

  4. Revise a saída de log das ações deste fluxo de trabalho enquanto elas são executadas.

  5. Depois que todos os trabalhos forem concluídos, você poderá visualizar os as informações dos alertas de code scanning que foram identificados. Para obter mais informações, confira "Gerenciamento de alertas de varredura de código para seu repositório".

Observação: se você gerou uma solicitação de pull para adicionar o fluxo de trabalho da code scanning ao repositório, os alertas da solicitação de pull só são exibidos diretamente na página da quando a solicitação de pull é mesclada. Se algum alerta for encontrado, você poderá vê-los antes da mesclagem da solicitação de pull clicando no link NUMBER alertas encontrados no banner da página da .

Clique no link "n alertas encontrados"

Entendendo as verificações de pull request

Cada fluxo de trabalho de code scanning que você configurar para ser executado em pull requests sempre terá pelo menos duas entradas listadas na seção de verificações de um pull request. Há uma entrada para cada um dos trabalhos de análise no fluxo de trabalho e uma entrada final para os resultados da análise.

Os nomes das verificações de análise de code scanning assumem a forma: "TOOL NAME / JOB NAME (TRIGGER)." Por exemplo, para CodeQL, a análise do código C++ tem a entrada "CodeQL / Analyze (cpp) (pull_request)." Clique em Detalhes em uma entrada da análise da code scanning para ver os dados de log. Isso permite que você corrija um problema caso ocorra uma falha no trabalho de análise. Por exemplo, para a análise de code scanning de linguagens compiladas, isto pode acontecer se a ação não puder criar o código.

Verificações de pull request de code scanning

Quando os trabalhos de code scanning forem concluídos, GitHub calcula se quaisquer alertas foram adicionados pelo pull request e adiciona a entrada " results / TOOL NAME" à lista de verificações. Depois que a code scanning for executada, pelo menos, uma vez, clique em Detalhes para ver os resultados da análise.

Próximas etapas

Depois de configurar a code scanning, e permitir que suas ações sejam concluídas, você pode: