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 análise", selecione Configurar e clique em Padrão.

    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. Os proprietários da organização podem habilitar verificações mensais de repositórios inativos. Para obter mais informações, consulte Configurações de segurança globais para sua organização.

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, os seus repositórios podem usar esses executores para a code scanning configuração padrão.

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 Alertas de escaneamento de código 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 na página de status da ferramenta, incluindo marcações de data e hora para cada verificação e a porcentagem de arquivos verificados. 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.