Skip to main content

Como definir a configuração padrão da verificação de código

Configure code scanning rapidamente para localizar e corrigir código vulnerável automaticamente.

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 Code scanning está disponível para os seguintes tipos de repositório:

  • Repositórios públicos no GitHub.com
  • Repositórios de propriedade da organização em GitHub Team, GitHub Enterprise Cloudou GitHub Enterprise Server, com GitHub Code Security habilitados.

Recomendamos que você comece a usar code scanning com a configuração padrão. Depois de configurar inicialmente a configuração padrão, você pode avaliar code scanning como ela está funcionando para você e personalizá-la para atender melhor às suas necessidades. Para obter mais informações, consulte Sobre os tipos de instalação para verificação de código.

Pré-requisitos

Seu repositório está qualificado para a configuração padrão para code scanning se:

  • GitHub Actions está habilitado.
  • Publicamente visível, ou o GitHub Code Security está habilitado.

Como definir a configuração padrão de um repositório

Observação

Se as análises falharem em todos os CodeQLidiomas com suporte em um repositório, a configuração padrão ainda será habilitada, mas não executará nenhuma verificação ou usará nenhum GitHub Actions minuto até que outro CodeQLidioma com suporte seja adicionado ao repositório ou a configuração padrão seja reconfigurada manualmente e a análise de um CodeQLidioma com suporte seja bem-sucedida.

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

    Observação

    Se você estiver configurando a configuração padrão em uma bifurcação, primeiro deverá habilitar GitHub Actions. Para habilitar GitHub Actions, no nome do repositório, clique em Ações e clique em Eu entendo meus fluxos de trabalho, vá em frente e habilite-os. Lembre-se de que isso habilitará todos os fluxos de trabalho no fork.

  2. No nome do repositório, clique em Settings. 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 Advanced Security.

  4. Em "Code Security", à direita de "CodeQL analysis", selecione Set up , then click Default.

    Captura de tela da seção "Code scanning" das configurações "Advanced Security". O botão "Configuração padrão" é realçado com um contorno laranja.

    Em seguida, você verá uma caixa de diálogo "CodeQL configuração padrão" resumindo a code scanning configuração criada automaticamente por configuração padrão.

  5. Opcionalmente, para personalizar a code scanning configuração, clique em Editar.

    • Para adicionar ou remover uma linguagem da análise executada pela configuração padrão, selecione ou desmarque essa linguagem da seção "Linguagens".
    • Para especificar o CodeQL pacote de consultas que você deseja usar, selecione o conjunto de consultas preferido na seção "Pacotes de consultas".
  6. Revise as configurações padrão no seu repositório e clique em Habilitar CodeQL. Isso acionará um fluxo de trabalho que testa a nova configuração gerada automaticamente.

    Observação

    Se você estiver alternando para a configuração padrão da instalação avançada, verá um aviso informando que a configuração padrão substituirá as configurações existentes code scanning . Esse aviso significa que a configuração padrão desabilitará o arquivo de fluxo de trabalho existente e bloqueará qualquer CodeQL upload da API de análise.

  7. Se os projetos em seu repositório dependerem de dependências em registros de pacotes privados, você poderá conceder code scanning acesso a eles. Isso pode melhorar os resultados e a qualidade das análises. Consulte Como dar aos recursos de segurança acesso a registros privados.

  8. Opcionalmente, ajuste outras opções de configuração que afetam a configuração padrão. Consulte Propriedades do repositório para code scanning.

  9. Opcionalmente, para exibir a configuração padrão após habilitar, selecione e clique em Exibir CodeQL configuração.

Observação

Se nenhuma solicitação de push e pull tiver ocorrido em um repositório com a configuração padrão habilitada por 6 meses, o agendamento semanal será desabilitado para salvar seus GitHub Actions minutos.

Executando a configuração padrão na auto-hospedagem ou executores avançados

Você pode usar a configuração padrão para todos os CodeQLidiomas com suporte em corredores auto-hospedados ou GitHubexecutores hospedados.

Observação

Code scanning vê os executores atribuídos quando a configuração padrão está habilitada. Se um executor for atribuído a um repositório que já esteja executando a configuração padrão, você deverá desativar e reativar a configuração padrão para começar a usar o executor. Se você adicionar um executor e quiser começar a usá-lo, poderá alterar a configuração manualmente sem precisar desativar e reativar a configuração padrão.

Atribuindo rótulos a executores auto-hospedados

Para atribuir um executor auto-hospedado para a configuração padrão, você pode usar o rótulo padrão code-scanning ou, opcionalmente, dar-lhes rótulos personalizados para que repositórios individuais possam usar diferentes executores. Para obter informações sobre como atribuir rótulos a executores auto-hospedados, consulte Usar rótulos com os executores auto-hospedados.

Depois de atribuir rótulos personalizados a executores auto-hospedados, seus repositórios podem usar esses executores para a configuração padrão code scanning.

Você também pode usar security configurations para atribuir rótulos a executores auto-hospedados para code scanning. Consulte Criando uma configuração de segurança personalizada.

Atribuir executores avançados

Para atribuir um executor avançado, nomeie o runner code-scanning. Isso adicionará automaticamente o code-scanning rótulo ao executor avançado. Uma organização só pode ter um executor avançado com o code-scanning rótulo e esse executor lidará com todos os code scanning trabalhos de repositórios em sua organização com acesso ao grupo do executor. Consulte Configurando executores maiores para configuração padrão.

Garantindo o suporte à compilação

A configuração padrão usa o modo de build none para C/C++, C#, Java e Rust e usa o modo de build autobuild para outros idiomas compilados. Você deve configurar seus executores auto-hospedados para garantir que eles possam executar todos os comandos necessários para análise C/C++, C# e Swift. A análise de código JavaScript/TypeScript, Go, Ruby, Python e Kotlin não requer configuração especial no momento.

Próximas Etapas 

Depois que a configuração for executada com êxito pelo menos uma vez, você poderá começar a examinar e resolver code scanning alertas. Para obter mais informações sobre code scanning alertas, consulte Sobre alertas de digitalização de códigos e Avaliar alertas de varredura de código para seu repositório.

Depois de configurar a configuração padrão para code scanning, você pode ler sobre como ela está funcionando para você e as próximas etapas que você pode executar para personalizá-la. Para obter mais informações, consulte Avaliar a configuração padrão para verificação de código.

Você pode encontrar informações detalhadas sobre sua code scanning configuração, incluindo carimbos de data/hora para cada verificação e a porcentagem de arquivos verificados, na página de status da ferramenta. Para obter mais informações, consulte Usar a página de status da ferramenta para verificação de código.

Ao definir a configuração padrão, você poderá encontrar um erro. Para obter informações sobre como solucionar erros específicos, consulte Solução de erros de análise de escaneamento de código.