Recomendamos que você comece a usar code scanning com a configuração padrão. Depois de definir a configuração padrão, você pode avaliar code scanning para verificar se está funcionando corretamente e personalizá-la para melhor atender às suas necessidades. Para saber mais, confira 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 da code scanning se:
- GitHub Actions está habilitado.
- GitHub Code Security está habilitado.
Como definir a configuração padrão de um repositório
Observação
Mesmo que haja falha nas análises para todas as linguagens compatíveis com o CodeQL em um repositório, a configuração padrão será habilitada, mas não executará nenhuma varredura nem usará minutos de GitHub Actions até que outra linguagem compatível com o CodeQL seja adicionada ao repositório ou que a configuração padrão seja redefinida manualmente e a análise de uma linguagem compatível com o CodeQL tenha êxito.
-
Em GitHub, acesse a página principal do repositório.
Observação
Se você estiver definindo uma configuração padrão em um fork, primeiro habilite GitHub Actions. Para habilitar o GitHub Actions, no nome do repositório, clique em Actions e, em seguida, clique em I understand my workflows, go ahead and enable them. Lembre-se de que isso habilitará todos os fluxos de trabalho no fork.
-
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.

-
Na seção "Security" da barra lateral, clique em Advanced Security.
-
Em "Code Security", à direita de "CodeQL analysis", selecione Set up , then click Default.

Em seguida, você verá uma caixa de diálogo "configuração padrão do CodeQL" resumindo a configuração da code scanning criada automaticamente pela configuração padrão.
-
Como opção, para personalizar a configuração do code scanning, clique em Edit.
- 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 pacote de consultas do CodeQL que você gostaria de usar, selecione o conjunto de consultas preferido na seção "Pacotes de consultas".
-
Revise as definições da configuração padrão no repositório e clique em Habilitar o CodeQL . Isso acionará um fluxo de trabalho que testa a nova configuração gerada automaticamente.
Observação
Se você estiver alternando 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 de code scanning. Esse aviso indica que a configuração padrão desabilitará o arquivo de fluxo de trabalho existente e bloqueará os uploads da API de análise do CodeQL.
-
Se os projetos no seu repositório dependem de dependências em registros de pacotes privados, você pode conceder acesso a code scanning a eles. Isso pode melhorar os resultados e a qualidade das análises. Confira Como dar aos recursos de segurança acesso a registros privados.
-
Opcionalmente, para ver a configuração padrão após a habilitação, selecione e clique em View CodeQL configuration.
Observação
Se não houver pushs e pull requests em um repositório com a configuração padrão habilitada por 6 meses, a programação semanal será desabilitada para economizar seus minutos de GitHub Actions.
Atribuição de executores para a configuração padrão
Observação
Code scanning vê os executores atribuídos quando a configuração padrão está ativada. 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 à configuração padrão, você pode usar o rótulo code-scanning padrão, ou, opcionalmente, atribuir rótulos code-scanning personalizados para que repositórios individuais possam usar executores diferentes. 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 aos executores auto-hospedados, seus repositórios podem usar esses executores para a configuração padrão de code scanning.
Você também pode usar security configurations para atribuir rótulos a executores auto-hospedados para code scanning. Confira Criando uma configuração de segurança personalizada.
Garantindo o suporte à compilação
A instalação padrão usa o modo de compilação none para C/C++, C#, Java e Rust e usa o modo de compilação autobuild para outras linguagens compiladas. 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 sua configuração for executada com sucesso, pelo menos, uma vez, você poderá começar a verificar e resolver os alertas da code scanning. Para obter mais informações sobre os alertas de code scanning, 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 seguir para personalizá-la. Para saber mais, confira Avaliar a configuração padrão para verificação de código.
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 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.