Aller au contenu principal

Référence de syntaxe YAML des détecteurs

Introduction

Les détecteurs GitGuardian sont définis sous forme de fichiers YAML. Ces pages documentent la syntaxe de ces fichiers.

Remarque : le terme « pattern » désigne ici une expression régulière Python.

Detector

Objet racine décrivant comment capturer un secret pour un service donné.

name (obligatoire)

Type : string

Motif : [a-z0-9_]

Nom machine du détecteur.

Pour des raisons historiques ce champ accepte les majuscules, mais la convention est d'utiliser uniquement les minuscules et _.

display_name (obligatoire)

Type : string

Nom lisible par un humain pour le détecteur.

family (obligatoire)

Type : Family

matchers (obligatoire)

Type : list[Matcher]

Extrait les secrets des documents.

pre_validators

Type : list[PreValidator]

Filtres rapides pour écarter des documents.

post_validators

Type : list[PostValidator]

Élimine les faux positifs.

Objets au sein d'un détecteur

Pré-validateurs

  • ContentWhitelistPreValidator : accepte un document si le nom de fichier ou le contenu contient l'un des motifs donnés.

  • FilenameBanlistPreValidator : exclut des documents selon leur nom de fichier ou extension.

Matchers

  • RegexMatcher : applique une expression régulière au contenu du document.

  • AssignmentRegexMatcher : motif regex pour une affectation de variable dans un ou plusieurs langages.

  • AggregateMatcher : regroupe plusieurs matchers.

Post-validateurs

  • EntropyPostValidator : calcule l'entropie de Shannon de la chaîne correspondante

Stratégies

  • DistanceStrategy : utilise la distance entre correspondances pour les regrouper.