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

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

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](/pt/code-security/concepts/code-scanning/setup-types).

## 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

> \[!NOTE]
> 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.

   > \[!NOTE]
   > 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 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-play" aria-label="play" role="img"><path d="M8 0a8 8 0 1 1 0 16A8 8 0 0 1 8 0ZM1.5 8a6.5 6.5 0 1 0 13 0 6.5 6.5 0 0 0-13 0Zm4.879-2.773 4.264 2.559a.25.25 0 0 1 0 .428l-4.264 2.559A.25.25 0 0 1 6 10.559V5.442a.25.25 0 0 1 .379-.215Z"></path></svg> 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 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-gear" aria-label="gear" role="img"><path d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"></path></svg> Settings**. Caso não consiga ver a guia "Configurações", selecione o menu suspenso **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="More" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg>** , 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.](/assets/images/help/repository/repo-actions-settings.png)

3. Na seção "Security" da barra lateral, clique em **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-codescan" aria-label="codescan" role="img"><path d="M8.47 4.97a.75.75 0 0 0 0 1.06L9.94 7.5 8.47 8.97a.75.75 0 1 0 1.06 1.06l2-2a.75.75 0 0 0 0-1.06l-2-2a.75.75 0 0 0-1.06 0ZM6.53 6.03a.75.75 0 0 0-1.06-1.06l-2 2a.75.75 0 0 0 0 1.06l2 2a.75.75 0 1 0 1.06-1.06L5.06 7.5l1.47-1.47Z"></path><path d="M12.246 13.307a7.501 7.501 0 1 1 1.06-1.06l2.474 2.473a.749.749 0 0 1-.326 1.275.749.749 0 0 1-.734-.215ZM1.5 7.5a6.002 6.002 0 0 0 3.608 5.504 6.002 6.002 0 0 0 6.486-1.117.748.748 0 0 1 .292-.293A6 6 0 1 0 1.5 7.5Z"></path></svg> Advanced Security**.

4. Em "Code Security", à direita de "CodeQL analysis", selecione **Set up** <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-triangle-down" aria-label="triangle-down" role="img"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg>, 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.](/assets/images/help/security/default-code-scanning-setup-ghas.png)

   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 **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-pencil" aria-label="pencil" role="img"><path d="M11.013 1.427a1.75 1.75 0 0 1 2.474 0l1.086 1.086a1.75 1.75 0 0 1 0 2.474l-8.61 8.61c-.21.21-.47.364-.756.445l-3.251.93a.75.75 0 0 1-.927-.928l.929-3.25c.081-.286.235-.547.445-.758l8.61-8.61Zm.176 4.823L9.75 4.81l-6.286 6.287a.253.253 0 0 0-.064.108l-.558 1.953 1.953-.558a.253.253 0 0 0 .108-.064Zm1.238-3.763a.25.25 0 0 0-.354 0L10.811 3.75l1.439 1.44 1.263-1.263a.25.25 0 0 0 0-.354Z"></path></svg> 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.

   > \[!NOTE]
   > 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](/pt/code-security/how-tos/secure-at-scale/configure-organization-security/manage-usage-and-access/giving-org-access-private-registries).

8. Opcionalmente, ajuste outras opções de configuração que afetam a configuração padrão. Consulte [Propriedades do repositório para code scanning](/pt/code-security/concepts/code-scanning/repository-properties).

9. Opcionalmente, para exibir a configuração padrão após habilitar, selecione <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="Menu" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg> e clique em **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-gear" aria-label="gear" role="img"><path d="M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z"></path></svg> Exibir CodeQL configuração**.

> \[!NOTE]
> 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 os 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.

> \[!NOTE]
> 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](/pt/actions/hosting-your-own-runners/managing-self-hosted-runners/using-labels-with-self-hosted-runners).

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](/pt/code-security/securing-your-organization/meeting-your-specific-security-needs-with-custom-security-configurations/creating-a-custom-security-configuration#creating-a-custom-security-configuration).

### 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](/pt/code-security/code-scanning/managing-your-code-scanning-configuration/configuring-larger-runners-for-default-setup#provisioning-organization-level-larger-runners-for-default-setup).

### 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](/pt/code-security/code-scanning/managing-code-scanning-alerts/about-code-scanning-alerts) e [Avaliar alertas de varredura de código para seu repositório](/pt/code-security/code-scanning/managing-code-scanning-alerts/assessing-code-scanning-alerts-for-your-repository).

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](/pt/code-security/code-scanning/enabling-code-scanning/evaluating-default-setup-for-code-scanning).

Você pode encontrar informações detalhadas sobre a sua code scanning configuração, incluindo os 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](/pt/code-security/code-scanning/managing-your-code-scanning-configuration/about-the-tool-status-page).

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](/pt/code-security/code-scanning/troubleshooting-code-scanning).