Skip to main content

Definir proteção contra mesclagem de verificação de código

Você pode usar conjuntos de regras para definir a proteção contra mesclagem do code scanning para pull requests.

Quem pode usar esse recurso?

Proprietários da organização, gerentes de segurança e membros da organização 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 Enterprise Cloud com GitHub Advanced Security habilitado

Sobre o uso de conjuntos de regras para proteção contra mesclagem do code scanning

Note

  • A proteção contra mesclagem com conjuntos de regras não está relacionada a verificações de status. Para obter mais informações sobre verificações de status, confira Sobre verificações de status.
  • A proteção de mesclagem com conjuntos de regras não se aplicará a grupos de filas de mesclagem ou a solicitações pull do Dependabot analisadas pela configuração padrão.

Você pode usar conjuntos de regras para evitar que pull requests sejam mesclados quando uma das seguintes condições for atendida:

  • Uma ferramenta necessária encontrou um alerta do code scanning de uma gravidade definida em um conjunto de regras.

  • Uma análise de ferramenta necessária do code scanning ainda está em andamento.

  • Uma ferramenta necessária do code scanning não está configurada para o repositório.

Normalmente, você deve usar conjuntos de regras destinados a branches de recursos de longa duração, em que gostaria de garantir que o código seja analisado antes que pull requests possam ser mescladas.

Configurar uma regra de code scanning não habilitará a code scanning automaticamente. Para saber mais sobre como habilitar a verificação de código, confira Como definir a configuração padrão da verificação de código.

Para obter mais informações sobre os alertas do code scanning confira Sobre alertas de digitalização de códigos.

Você pode definir a proteção contra mesclagem com conjuntos de regras nos níveis de repositório organização e para repositórios definidos com configuração padrão ou configuração avançada. Você também pode usar a API REST para definir a proteção contra mesclagem com conjuntos de regras.

Para saber mais sobre os conjuntos de regras, confira Sobre os conjuntos de regras.

Criar um conjunto de regras de proteção contra mesclagem para um repositório

  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 barra lateral esquerda, em "Código e automação", clique em Regras e em Conjuntos de regras.

    Captura de tela da barra lateral da página "Configurações" de um repositório. O submenu "Regras" está expandido, e a opção "Conjuntos de regras" está realçada em laranja.

  4. Clique em Novo conjunto de regras.

  5. Para criar um conjunto de regras direcionado a branches, clique em Novo conjunto de regras de branch.

  6. Em "Nome do conjunto de regras", digite um nome para o conjunto de regras.

  7. Opcionalmente, para alterar o status de imposição padrão, clique em Desabilitado e selecione um status de imposição. Para obter mais informações sobre os status de imposição, confira "Sobre os conjuntos de regras".

  8. Em "Proteções de ramificação", selecione Exigir resultados do code scanning.

  9. Em "Required tools and alert thresholds", clique em Add tool e selecione uma ferramenta de code scanning no menu suspenso. Por exemplo, "CodeQL".

  10. Ao lado do nome de uma ferramenta do code scanning:

    • Clique em Alertas e selecione um dos seguintes: Nenhum, Erros, Erros e Avisos ou Todos.
    • Clique em Alertas de segurança e selecione um dos seguintes: Nenhum, Crítico, Alto ou superior, Médio ou superior ou Todos.

    Captura de tela da seção "Ferramentas necessárias e limites de alerta" das configurações de "Conjuntos de regras".

Para obter mais informações sobre a gravidade do alerta e os níveis de severidade de segurança, consulte "Sobre alertas de digitalização de códigos".

Para obter mais informações sobre como gerenciar conjuntos de regras em um repositório, confira Como gerenciar conjuntos de regras de um repositório.

Criar um conjunto de regras de proteção contra mesclagem com a API REST

Você pode usar a API REST para criar um conjunto de regras com a regra code_scanning, que permite definir ferramentas específicas e definir limites de alerta. Para saber mais, confira Pontos de extremidade da API REST para regras.