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.