Saltar para o conteúdo principal

Visão Geral

As regras personalizadas permitem definir políticas de segurança em linguagem natural que a ZeroPath avalia durante scans completos nos repositórios selecionados. Em vez de escrever regras complexas de correspondência de padrões, descreva o que você quer verificar e a IA da ZeroPath a aplica em toda a sua base de código.

Criando Regras

Pelo Dashboard

  1. Navegue até Rules no dashboard da ZeroPath e selecione a aba Custom Rules.
  2. Clique em “Add Rule”.
  3. Dê à regra um nome descritivo.
  4. Escreva sua regra em linguagem natural. Por exemplo:
    • “Sinalize qualquer endpoint de API que retorne endereços de e-mail de usuários sem que o chamador tenha escopo de admin”
    • “Encontre instruções de log que incluam corpos de requisição que possam conter senhas ou tokens”
    • “Verifique se todas as consultas ao banco de dados usam consultas parametrizadas em vez de concatenação de strings”
    O editor de regras inclui exemplos clicáveis de regras que você pode usar como ponto de partida.
  5. Opcionalmente, defina um escopo de arquivos usando um padrão glob (por exemplo, src/api/**, *.py) para limitar a regra a arquivos específicos. O padrão é todos os arquivos.
  6. Escolha o escopo de repositórios: aplique a regra a todos os repositórios (incluindo quaisquer adicionados no futuro) ou selecione repositórios específicos. Você também pode atribuir tags para organizar suas regras.
  7. Salve a regra.

Pela API

As regras podem ser gerenciadas por meio da API v2:
Para aplicar uma regra a todos os repositórios da organização, passe allRepositories: true em vez de repositoryIds:
Para limitar o escopo de uma regra a todos os repositórios com tags específicas, use scope: "tags" com tagIds:
Você também pode usar o parâmetro explícito scope ("allRepositories", "repositories" ou "tags") em qualquer requisição de criação ou atualização para tornar o escopo pretendido inequívoco:
Você não pode combinar allRepositories e repositoryIds na mesma requisição. Use um ou outro ao criar ou atualizar uma regra. Ao usar scope: "tags", não passe repositoryIds nem allRepositories.

Como as Regras São Avaliadas

Durante cada scan, a ZeroPath:
  1. Identifica as aplicações no seu repositório (serviços, módulos, pontos de entrada).
  2. Avalia cada regra personalizada contra cada aplicação em contexto.
  3. Reporta violações como achados, junto aos resultados de SAST, SCA e outros.
As violações de regras personalizadas aparecem no mesmo fluxo de achados que os demais resultados de scan — com severidade, confiança, arquivo afetado e orientação de remediação.

Escopo das Regras

As regras podem ter escopo em diferentes níveis: Regras com escopo de organização se aplicam automaticamente a repositórios recém-adicionados, sem nenhuma atualização manual. Regras com escopo de tag se aplicam automaticamente a todos os repositórios que pertencem às tags selecionadas, e o acesso é atualizado dinamicamente conforme repositórios entram ou saem de uma tag. Ao listar regras pela API, cada regra inclui um campo scope ("allRepositories", "repositories" ou "tags") indicando como seu escopo está definido. As regras seguem a mesma cascata de herança org → tag → repo das configurações do scanner. Regras no nível de repositório complementam (e não substituem) as regras nos níveis de organização e tag.

Gerenciando Regras

Pelo dashboard ou pela API, você pode:
  • Listar todas as regras da sua organização — regras que se aplicam a todos os repositórios exibem “All Repositories”, e regras com escopo de tag exibem o número de tags atribuídas (por exemplo, “2 Tags”) em vez de uma contagem numérica de repositórios
  • Visualizar a definição, o escopo e os metadados de uma regra
  • Atualizar o nome, a descrição, a definição em linguagem natural ou o escopo de uma regra (passe allRepositories: true para aplicar a todos os repositórios, ou repositoryIds para limitar a repositórios específicos)
  • Excluir regras que não são mais necessárias

Modo Somente Regras Personalizadas

Para organizações ou repositórios que desejam executar apenas suas regras personalizadas, habilite a opção Custom rules only nas configurações do scanner. Quando habilitada, a ZeroPath desativa todos os módulos de scan integrados — incluindo SAST, SCA, IaC, Secrets e EOL — e avalia apenas suas regras personalizadas em linguagem natural contra as fontes identificadas. Essa configuração pode ser definida no nível da organização, da tag ou de um repositório individual, seguindo a cascata padrão de herança de configurações.

Pacotes de Regras

Além das regras personalizadas, a ZeroPath oferece Rule Packs — coleções curadas de regras pré-construídas publicadas pela ZeroPath que cobrem padrões de segurança comuns e requisitos de conformidade. Você pode navegar pelos pacotes de regras disponíveis na aba Rule Packs da página Rules e habilitar os que forem relevantes para a sua organização. Os pacotes de regras complementam suas regras personalizadas. Quando um pacote de regras está habilitado, suas regras são avaliadas durante os scans junto com quaisquer regras personalizadas que você tenha definido.

Boas Práticas

  1. Seja específico — “Todos os endpoints de API devem validar o token de sessão do usuário antes de processar” é melhor que “As APIs devem ser seguras”.
  2. Uma política por regra — crie regras separadas para preocupações separadas, para que as violações sejam acionáveis.
  3. Comece amplo e depois refine — comece com políticas de alto nível e adicione detalhes com base nas violações que você observar.
  4. Use tags para regras específicas de cada equipe — equipes diferentes podem ter requisitos de segurança diferentes; delimite o escopo das regras usando tags.