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.