Skip to main content

Como definir a configuração avançada para verificação de código

Você pode configurar a configuração avançada para um repositório para encontrar vulnerabilidades de segurança em seu código usando uma configuração de code scanning altamente personalizável.

Quem pode usar esse recurso?

Proprietários de repositórios, proprietários de organizações, gerentes de segurança e usuários com a função de administrador

O Repositórios pertencentes à organização com GitHub Advanced Security habilitado

Note

O administrador do site precisa habilitar a code scanning antes que você possa usar esse recurso. Se você desejar usar o GitHub Actions para fazer a varredura do seu código, o administrador do site também deverá habilitar o GitHub Actions e configurar a infraestrutura necessária. Para saber mais, confira Como configurar a verificação de código do seu dispositivo.

Sobre a configuração avançada para code scanning

A configuração avançada da code scanning é útil quando você precisa personalizar a code scanning. Ao criar e editar um arquivo de fluxo de trabalho, você pode definir como compilar linguagens compiladas, escolher quais consultas executar, selecionar as linguagens a serem verificadas, usar uma compilação de matriz e muito mais. Você também tem acesso a todas as opções para controlar fluxos de trabalho, por exemplo: alterar o cronograma de varredura, definir gatilhos de fluxo de trabalho, especificar executores especializados para usar. Para obter mais informações sobre os fluxos de trabalho do GitHub Actions, confira Sobre fluxos de trabalho.

O administrador do site também pode disponibilizar ações de terceiros para os usuários de code scanning, configurando GitHub Connect. Para saber mais, confira Como configurar a verificação de código do seu dispositivo.

Se você executar a verificação de código usando várias configurações, algumas vezes um alerta terá várias origens de análise. Se um alerta tiver várias origens de análise, você poderá ver o status do alerta para cada origem de análise na página de alertas. Para saber mais, confira Sobre alertas de digitalização de códigos.

Note

Este artigo descreve os recursos disponíveis na versão da ação do CodeQL e o pacote da CodeQL CLI associado incluído na versão inicial desta versão do GitHub Enterprise Server. Se sua empresa usa uma versão mais recente da ação CodeQL, confira a versão GitHub Enterprise Cloud deste artigo para obter informações sobre os recursos mais recentes. Para saber mais sobre como usar a versão mais recente, confira "Como configurar a verificação de código do seu dispositivo".

Caso não precise de uma configuração altamente personalizável da code scanning, considere o uso da configuração padrão para code scanning. Para obter mais informações sobre a qualificação para a configuração padrão, confira Como definir a configuração padrão da verificação de código.

Pré-requisitos

Seu repositório será é elegível para configuração avançada se atender a esses requisitos.

  • Ele usa linguagens compatíveis com o CodeQL ou se você pretende gerar resultados da verificação de código com uma ferramenta de terceiros.
  • As GitHub Actions estão habilitadas.
  • GitHub Advanced Security estar habilitada.

Se o servidor no qual você está executando o GitHub Enterprise Server não estiver conectado à Internet, o administrador do site poderá habilitar o CodeQL code scanning disponibilizando o pacote de análise do CodeQL no servidor. Para saber mais, confira Como configurar a verificação de código do seu dispositivo.

Como definir a configuração avançada da code scanning com o CodeQL

Você pode personalizar sua análise CodeQL criando e editando um arquivo de fluxo de trabalho. Selecionar a configuração avançada gera um arquivo de fluxo de trabalho básico para você personalizar. Utilize a sintaxe padrão de fluxo de trabalho e especifique opções para a ação CodeQL. Confira Sobre fluxos de trabalho e Personalizando a configuração avançada para varredura de código.

  1. Em GitHub, acesse a página principal do repositório.

  2. Abaixo do nome do repositório, clique em Configurações. Caso não consiga ver a guia "Configurações", selecione o menu suspenso , 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.

  3. Na seção "Security" da barra lateral, clique em Code security and analysis.

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

    Note

    Se você estiver mudando da configuração padrão para a avançada, na seção "Code scanning", selecione e clique em Switch to advanced. Na janela pop-up exibida, clique em Desabilitar CodeQL .

    Captura de tela da seção "Code scanning" das configurações "Code security and analysis". O botão "Configuração avançada" é realçado com um contorno laranja.

  5. 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 saber mais, confira Personalizando a configuração avançada para varredura de código e Verificação de código do CodeQL para linguagens compiladas.

  6. Clique em Fazer commit das alterações… para ver o formulário das alterações de commit.

    Captura de tela do formulário para criar um arquivo. À direita do nome do arquivo, um botão verde, rotulado como "Confirmar alterações...", está contornado em laranja escuro.

  7. No campo mensagem do commit, digite uma mensagem do commit.

  8. Escolha se você quer fazer commit diretamente no branch padrão ou criar um branch e iniciar uma solicitação de pull.

  9. Clique em Fazer commit de novo arquivo para fazer commit do arquivo de fluxo de trabalho no branch padrão ou clique em Propor novo arquivo para fazer commit do arquivo em um novo branch.

  10. Se você criou um branch, clique em Criar solicitação de pull e abra uma solicitação de pull para mesclar a alteração no branch padrão.

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. Confira Personalizando a configuração avançada para varredura de código e Acionando um fluxo de trabalho.

Para obter informações sobre habilitação em massa, consulte Como definir a configuração avançada da verificação de código com CodeQL em escala.

Próximas etapas

Depois que seu fluxo de trabalho for executado com sucesso, pelo menos, uma vez, você estará pronto para verificar e resolver os alertas da code scanning. Para obter mais informações sobre os alertas da code scanning, confira Sobre alertas de digitalização de códigos e Avaliar alertas de verificação de código para seu repositório.

Saiba como execuções code scanning se comportam como verificações em pull requests, consulte Alertas de varredura de código de triagem em pull requests.

Encontre informações detalhadas sobre a configuração da code scanning, incluindo os carimbos de data/hora de cada verificação e o percentual de arquivos verificados, na página de status da ferramenta. Para saber mais, confira Sobre a página de status da ferramenta para a verificação de código.

Leitura adicional