Skip to main content

Sobre a proteção por push

A proteção de push impede que os colaboradores enviem segredos por push para um repositório e gera um alerta sempre que um colaborador ignora o bloqueio. Você pode aplicar a proteção de push no nível de repositório ou de organização.

Quem pode usar esse recurso?

A proteção por push está disponível para os seguintes tipos de repositório:

Sobre a proteção por push

A proteção de push é um recurso da secret scanning projetado para impedir que informações confidenciais, como segredos ou tokens, sejam enviadas para o repositório em primeiro lugar. Ao contrário da secret scanning, que detecta segredos após seu commit, a proteção de push verifica proativamente seu código em busca de segredos durante o processo de push e bloqueia o push se algum for detectado.

A proteção de push ajuda a evitar os riscos associados a segredos expostos, como acesso não autorizado a recursos ou serviços. Com esse recurso, os desenvolvedores obtêm feedback imediato e podem resolver possíveis problemas antes que eles se tornem uma preocupação de segurança.

Para obter informações sobre os segredos e provedores de serviços compatíveis com a proteção de push, confira Padrões de varredura de segredos com suporte.

A proteção de push tem algumas limitações. Para saber mais, confira Solução de problemas com a varredura de segredos.

Como a proteção de push funciona

A proteção contra push funciona:

Uma vez habilitada, se a proteção de push detectar um possível segredo durante uma tentativa de push, ela bloqueará o push e fornecerá uma mensagem detalhada explicando o motivo do bloqueio. Você precisará revisar o código em questão, remover todas as informações confidenciais e tentar o push novamente.

Por padrão, qualquer pessoa com acesso de gravação ao repositório pode optar por ignorar a proteção de push especificando um dos motivos de bypass descritos na tabela. Se um colaborador ignorar um bloco de proteção por push para um segredo, GitHub:

  • criará um alerta na guia Segurança do repositório.
  • Adiciona o evento de bypass ao log de auditoria.
  • Envia um alerta por email para proprietários da organização ou da conta pessoal, gerentes de segurança e administradores de repositório que estiverem inspecionando o repositório, com um link para o segredo e o motivo pelo qual ele foi permitido.

Esta tabela mostra o comportamento dos alertas referente a cada maneira como o usuário pode ignorar um bloco de proteção por push.

Motivo do bypassComportamento do alerta
É usado em testesO GitHub cria um alerta fechado, que é resolvido como "usado em testes"
Isso é um falso positivoO GitHub cria um alerta fechado, que é resolvido como "falso positivo"
Farei a correção mais tardeO GitHub cria um alerta aberto

Se desejar maior controle sobre quais contribuidores podem ignorar a proteção de push e quais envios por push contendo segredos devem ser permitidos, você poderá habilitar o bypass delegado para proteção de push. O bypass delegado permite configurar um grupo designado de revisores para supervisionar e gerenciar solicitações a fim de ignorar a proteção de push de contribuidores que enviam por push para o repositório. Para saber mais, confira Sobre o bypass delegado para proteção de push.

Você também pode ignorar a proteção contra push usando a API REST. Para saber mais, confira Pontos de extremidade da API REST para verificação de segredos.

Sobre os benefícios da proteção de push

  • Segurança preventiva: a proteção de push atua como um mecanismo de defesa de linha de frente, verificando o código em busca de segredos no momento do push. Essa abordagem preventiva ajuda a detectar possíveis problemas antes que eles sejam inseridos em seu repositório.

  • Feedback imediato: os desenvolvedores recebem feedback instantâneo se um possível segredo for detectado durante uma tentativa de push. Essa notificação imediata permite uma correção rápida, reduzindo a probabilidade de exposição de informações confidenciais.

  • **Risco reduzido de vazamentos de **dados: ao bloquear commits que contêm informações confidenciais, a proteção contra push reduz significativamente o risco de vazamentos acidentais de dados. Isso ajuda a proteger contra acesso não autorizado à sua infraestrutura, serviços e dados.

  • Gerenciamento eficiente de segredos: em vez de lidar retrospectivamente com segredos expostos, os desenvolvedores podem resolver problemas na origem. Isso torna o gerenciamento de segredos mais eficiente e menos demorado.

  • Capacidade de detectar padrões personalizados: as organizações podem definir padrões personalizados para detectar segredos exclusivos de seus próprios ambientes. Essa personalização garante que a proteção de push possa identificar e bloquear com eficácia até mesmo segredos não padrão.

  • Bypass delegado para flexibilidade: para casos em que ocorrem falsos positivos ou quando determinados padrões são necessários, o recurso de bypass delegado permite que usuários designados aprovem pushes específicos. Isso fornece flexibilidade sem comprometer a segurança geral.

Personalizando a proteção de push

Depois que a proteção de push estiver habilitada, você poderá personalizá-la ainda mais:

Definir padrões personalizados

Defina padrões personalizados que a proteção de push pode usar para identificar segredos e bloquear pushes que contenham esses segredos. Para saber mais, confira Definir padrões personalizados para a verificação de segredo.

Configurar o bypass delegado

Defina colaboradores que podem ignorar a proteção de push e adicione um processo de aprovação para outros colaboradores. Para saber mais, confira Sobre o bypass delegado para proteção de push.

Leitura adicional