ggshield secret scan docker
Description
Scanne une image Docker après avoir exporté son système de fichiers et son manifeste avec la commande docker save.
ggshield secret scan docker [OPTIONS] NAME
ggshield tente de télécharger l'image si elle n'est pas disponible localement.
Options
-
--docker-timeout SECONDS: Délai d'expiration pour les commandes Docker.Par défaut :
360. -
--source-uuid TEXT: Identifiant de la source personnalisée dans GitGuardian. S'il est utilisé, les incidents seront créés et visibles sur le dashboard. Nécessite le scope « scan:create-incidents ». -
--filename-only: Envoyer uniquement le nom du fichier (et non le chemin complet) à GitGuardian, afin que les incidents n'enregistrent que le nom du fichier. -
--all-secrets: Ne pas ignorer de secret. La raison possible d'ignorance est également affichée. -
--instance URL: URL de l'instance à utiliser. -
--with-incident-details: Afficher tous les détails de l'incident du dashboard si un incident est trouvé (formats JSON et SARIF uniquement). Nécessite le scope « incidents:read ». -
-b,--banlist-detector DETECTOR: Exclure les résultats d'un détecteur. -
--ignore-known-secrets: Ignorer les secrets déjà connus du dashboard GitGuardian. -
--exclude PATTERNS: Ne pas scanner les chemins qui correspondent aux motifs de type glob spécifiés. -
--exit-zero: Renvoyer un code de statut 0 (sans erreur), même si des incidents sont trouvés. Un code de statut d'erreur sera tout de même renvoyé pour les autres erreurs, telles que les erreurs de connexion. Cette option peut également être définie avec la variable d'environnementGITGUARDIAN_EXIT_ZERO. -
--show-secrets: Afficher les secrets en clair au lieu de les masquer. -
-o,--output PATH: Rediriger la sortie de ggshield vers PATH. -
--format [text|json|sarif]: Format à utiliser pour la sortie. -
--json: Raccourci pour--format json.
Cette commande prend en charge toutes les options globales de ggshield.
Exemples
ggshield secret scan docker gitguardian/ggshield
À propos de la mise en cache
Lors du premier scan d'une image Docker, ggshield stocke le DiffID des couches qui ont été identifiées comme propres dans un cache sur disque. Si la même image est scannée une deuxième fois, ggshield ignore le scan des couches propres connues. Cela peut grandement accélérer le scan des images Docker volumineuses, puisque seules les couches modifiées sont scannées à nouveau.
Ce cache dépend de la version du moteur de secrets de GitGuardian. Lorsqu'une nouvelle version du moteur de secrets est déployée, toutes les couches sont scannées à nouveau.
Lors de l'utilisation de ggshield secret scan docker dans une CI, il est important de conserver le répertoire de cache entre les exécutions de la CI, sinon le cache n'est jamais réutilisé. L'emplacement de cache par défaut de ggshield dépend du système d'exploitation :
- Linux :
$XDG_CACHE_HOME/ggshield, ou~/.cache/ggshieldsi$XDG_CACHE_HOMEn'est pas défini - macOS :
~/Library/Caches/ggshield - Windows :
%LOCALAPPDATA%\GitGuardian\ggshield\Cache
Vous pouvez également définir le répertoire de cache à l'aide de la variable d'environnement $GG_CACHE_DIR.
Notez que le cache Docker se trouve dans un sous-répertoire docker du répertoire de cache.