Sobre padrões personalizados para varredura secreta
Você pode definir padrões personalizados para identificar segredos que não são detectados pelos padrões padrão compatíbeis com varredura secreta. Por exemplo, você pode ter um padrão de segredo que é interno da sua organização. Para obter detalhes dos segredos e provedores de serviço compatíveis, consulte " Padrões de Varredura secreta".
É possível definir padrões personalizados para sua empresa, organização ou repositório. Varredura secreta é vompatível com até 500 padrões personalizados para cada conta da organização ou empresa e até 100 padrões personalizados por repositório.
Sintaxe de expressão regular para padrões personalizados
Você pode especificar padrões personalizados para >- secret scanning for advanced security como uma ou mais expressões regulares.
- Formato secreto: uma expressão que descreve o formato do próprio segredo.
- Antes do segredo: uma expressão que descreve os caracteres que vêm antes do segredo. Por padrão, isto é definido como
\A|[^0-9A-Za-z]
, o que significa que o segredo deve estar no início de uma linha ou ser precedido por um caractere não alfanumérico. - Após o segredo: uma expressão que descreve os caracteres que vêm após o segredo. Por padrão, isso é definido como
\z|[^0-9A-Za-z]
o que significa que o segredo deve ser seguido por uma nova linha ou um caractere não alfanumérico. - Requisitos adicionais de correspondência: uma ou mais expressões opcionais que o segredo propriamente dito deve ou não corresponder.
Para tokens simples você normalmente só precisa especificar um formato de segredo. Os outros campos proporcionam flexibilidade para que você possa especificar segredos mais complexos sem criar expressões regulares complexas. Par aobter um exemplo de um padrão personalizado, consulte "Exemplo de um padrão personalizado especificado com requisitos adicionais" abaixo.
Varredura secreta usa a biblioteca Hyperscan e é compatível apenas os construtores regex do Hyperscan, que são um subconjunto da sintaxe PCRE. Os modificadores de opções de huperscan não são compatíveis. Para obter mais informações sobre construções de padrões do Hyperscan, consulte "suporte do padrãona documentação do Hyperscan.
Definindo um padrão personalizado para um repositório
Antes de definir um padrão personalizado, você deve garantir que varredura secreta está habilitado no seu repositório. Para obter mais informações, consulte "Configurar varredura secreta para os seus repositórios".
-
No GitHub.com, navegue até a página principal do repositório.
-
No nome do seu repositório, clique em Configurações.
-
In the "Security" section of the sidebar, click Code security and analysis.
-
Under "Code security and analysis", find "Segurança Avançada GitHub."
-
Em "Varredura secreta", em "Padrões personalizados", clique em Novo padrão.
-
Insira as informações para o seu novo padrão personalizado:
- Você deve fornecer, pelo menos, o nome para o seu padrão e uma expressão regular para o formato do seu padrão de segredo.
- Você pode clicar em Mais opções para fornecer outros conteúdos adjacentes ou requisitos adicionais de correspondência para o formato do segredo.
- Forneça um exemplo de texto de teste para certificar-se de que a sua configuração corresponde aos padrões esperados.
-
Quando estiver pronto para testar seu novo padrão personalizado, para identificar correspondências no repositório sem criar alertas, clique em Salvar testar.
-
Quando o teste for concluído, você verá uma amostra de resultados (até 1000). Revise os resultados e identifique quaisquer resultados falso-positivos.
-
Edite o novo padrão personalizado para corrigir quaisquer problemas com os resultados. Em seguida, para testar suas alterações, clique em Salvar e executar teste.
Note: The dry run feature is currently in beta and subject to change.
-
Quando estiver satisfeito com o seu novo padrão personalizado, clique em Publicar padrão.
Após a criação do seu padrão, varredura secreta verifica todos segredos em todo o histórico do Git em todos os branches presentes no repositório GitHub. Para mais informações sobre visualização de alertas varredura secreta, consulte "Gerenciando alertas de varredura secreta".
Exemplo de um padrão personalizado especificado usando requisitos adicionais
Uma empresa tem um token interno com cinco características. Eles usam os diferentes campos para especificar como identificar tokens da seguinte forma:
Característica | Expressão regular e campo |
---|---|
Comprimento entre 5 e 10 caracteres | Formato do segredo: [$#%@AA-Za-z0-9]{5,10} |
Não termina com um . | Após o segredo: [^\.] |
Contém números e letras maiúsculas | Requisitos adicionais: o segredo deve corresponder a [A-Z] e [0-9] |
Não inclui mais de uma letra minúscula consecutiva | Requisitos adicionais: o segredo não deve corresponder a [a-z]{2,} |
Contém um dos $%@! | Requisitos adicionais: o segredo deve corresponder a [$%@!] |
Esses tokens iriam corresponder ao padrão personalizado descrito acima:
a9@AAfT! # Secret string match: a9@AAfT
ee95GG@ZA942@aa # Secret string match: @ZA942@a
a9@AA!ee9 # Secret string match: a9@AA
Estas strings não correspondem ao padrão personalizado descrito acima:
a9@AA.!
a@AAAAA
aa9@AA!ee9
aAAAe9
Definindo um padrão personalizado para uma organização
Antes de definir um padrão personalizado, você deverá habilitar varredura secreta para os repositórios que você deseja fazer a digitalização na organização. Para habilitar varredura secreta em todos os repositórios da sua organização, consulte "gerenciar configurações de segurança e análise da sua organização".
-
In the top right corner of GitHub.com, click your profile photo, then click Your organizations.
-
Ao lado da organização, clique em Configurações.
-
In the "Security" section of the sidebar, click Code security and analysis.
-
Under "Code security and analysis", find "Segurança Avançada GitHub."
-
Em "Varredura secreta", em "Padrões personalizados", clique em Novo padrão.
-
Insira as informações para o seu novo padrão personalizado:
- Você deve fornecer, pelo menos, o nome para o seu padrão e uma expressão regular para o formato do seu padrão de segredo.
- Você pode clicar em Mais opções para fornecer outros conteúdos adjacentes ou requisitos adicionais de correspondência para o formato do segredo.
- Forneça um exemplo de texto de teste para certificar-se de que a sua configuração corresponde aos padrões esperados.
-
Quando você estiver pronto para testar seu novo padrão personalizado, para identificar correspondências em repositórios selecionados sem criar alertas, clique em Salvar e testar.
-
Pesquise e selecione até os repositórios onde você deseja executar o teste.
-
Quando estiver pronto para testar seu novo padrão personalizado, clique em Testar.
-
Quando o teste for concluído, você verá uma amostra de resultados (até 1000). Revise os resultados e identifique quaisquer resultados falso-positivos.
-
Edite o novo padrão personalizado para corrigir quaisquer problemas com os resultados. Em seguida, para testar suas alterações, clique em Salvar e executar teste.
Note: The dry run feature is currently in beta and subject to change.
-
Quando estiver satisfeito com o seu novo padrão personalizado, clique em Publicar padrão.
Depois que o padrão for criado, varredura secreta irá verificar todos os segredos nos repositórios na sua organização, incluindo todo seu histórico do Git em todos os branches. Os proprietários da organização e administradores do repositório receberão um alerta sobre todos os segredos encontrados e poderão revisar o alerta no repositório onde o segredo for encontrado. Para obter mais informações sobre a visualização de alertas de varredura secreta, consulte "Gerenciar alertas de varredura secreta".
Definir um padrão personalizado para uma conta corporativa
Antes de definir um padrão personalizado, você deverá garantir que você habilite a digitalização de segredo para a sua conta corporativa. Para obter mais informações, consulte "Habilitar Segurança Avançada GitHub para a sua empresa."
Notas:
- No nível corporativo, apenas o criador de um padrão personalizado pode editar o padrão e usá-lo em um teste.
- Os proprietários de empresas só podem usar testes em repositórios aos quais têm acesso, e os proprietários de empresas não têm necessariamente acesso a todas as organizações ou repositórios da empresa.
-
No canto superior direito de GitHub.com, clique na sua foto de perfil e, em seguida, clique em Suas empresas.
-
Na lista de empresas, clique na empresa que você deseja visualizar.
-
Na barra lateral da conta corporativa, clique em Policies.
-
Em Políticas, clique em "Segurança Avançada".
-
Under "GitHub Advanced Security", click the Security features tab.
-
Em "Padrões de personalização de digitalização de segredos", clique em Novo padrão.
-
Insira as informações para o seu novo padrão personalizado:
- Você deve fornecer, pelo menos, o nome para o seu padrão e uma expressão regular para o formato do seu padrão de segredo.
- Você pode clicar em Mais opções para fornecer outros conteúdos adjacentes ou requisitos adicionais de correspondência para o formato do segredo.
- Forneça um exemplo de texto de teste para certificar-se de que a sua configuração corresponde aos padrões esperados.
-
Quando estiver pronto para testar seu novo padrão personalizado, para identificar correspondências na empresa sem criar alertas, clique em Salvar e testar.
-
Pesquise e selecione até os repositórios onde você deseja executar o teste.
-
Quando estiver pronto para testar seu novo padrão personalizado, clique em Testar.
-
Quando o teste for concluído, você verá uma amostra de resultados (até 1000). Revise os resultados e identifique quaisquer resultados falso-positivos.
-
Edite o novo padrão personalizado para corrigir quaisquer problemas com os resultados. Em seguida, para testar suas alterações, clique em Salvar e executar teste.
Note: The dry run feature is currently in beta and subject to change.
-
Quando estiver satisfeito com o seu novo padrão personalizado, clique em Publicar padrão.
Depois que o seu padrão for criado, varredura secreta irá digitalizar qualquer segredo em repositórios nas organizações da sua empresa com Segurança Avançada GitHub habilitado, incluindo todo seu histórico do Git em todos os branches. Os proprietários da organização e administradores do repositório receberão um alerta sobre todos os segredos encontrados e poderão revisar o alerta no repositório onde o segredo for encontrado. Para obter mais informações sobre a visualização de alertas de varredura secreta, consulte "Gerenciar alertas de varredura secreta".
Editando um padrão personalizado
Ao salvar uma alteração em um padrão personalizado, isso irá fechar todos os alertas de varredura secreta que foram criados usando a versão anterior do padrão.
- Acesse o local onde o padrão personalizado foi criado. Um padrão personalizado pode ser criado na conta de um repositório, organização ou empresa.
- Para um repositório ou organização, exiba as configurações "Segurança & análise" do repositório ou organização onde o padrão personalizado foi criado. Para mais informações consulte "Definir um padrão personalizado para um repositório" ou "Definir um padrão personalizado para uma organização" acima.
- Para uma empresa, em "Políticas" exiba a área "Segurança Avançada" e, em seguida, clique em Funcionalidades de segurança. Para obter mais informações, consulte "Definindo um padrão personalizado para uma conta corporativa" acima.
- Em "Varredura secreta", à direita do padrão personalizado que você deseja editar, clique em .
- Quando estiver pronto para testar seu padrão personalizado editado, para identificar correspondências sem criar alertas, clique em Salvar e testar.
- Ao revisar e testar suas alterações, clique em Salvar alterações.
Removendo um padrão personalizado
-
Acesse o local onde o padrão personalizado foi criado. Um padrão personalizado pode ser criado na conta de um repositório, organização ou empresa.
- Para um repositório ou organização, exiba as configurações "Segurança & análise" do repositório ou organização onde o padrão personalizado foi criado. Para mais informações consulte "Definir um padrão personalizado para um repositório" ou "Definir um padrão personalizado para uma organização" acima.
- Para uma empresa, em "Políticas" exiba a área "Segurança Avançada" e, em seguida, clique em Funcionalidades de segurança. Para obter mais informações, consulte "Definindo um padrão personalizado para uma conta corporativa" acima.