Ce guide décrit comment utiliser le mode CLI/CI pour lancer des scans à distance via notre API. Apprenez à préparer vos projets, envoyer une requête et récupérer un rapport signé.
Fournissez l’URL de votre dépôt Git ainsi que la branche et le commit. Le serveur récupère le code en lecture seule et effectue l’analyse.
Fournissez le chemin d’un projet local que le CLI compressera en archive ZIP et téléversera au serveur. Aucun traitement n’est effectué en local.
Fournissez un fichier SBOM (CycloneDX/SPDX) décrivant vos dépendances. Seules les bibliothèques déclarées sont analysées, pas votre code.
Exécutez la commande CLI avec les paramètres adaptés : chemin ou URL du projet, mode (scm, zip ou sbom), licence et formats de sortie. Le CLI s’occupe de l’authentification, de l’envoi et du téléchargement du rapport. Vous pouvez définir des quality gates, anonymiser les chemins et personnaliser les exclusions.
Le CLI communique avec notre API d’ingestion pour créer un scan et suivre son état. Les endpoints utilisés sont :
Chaque requête doit être authentifiée par un jeton éphémère obtenu lors de la vérification de la licence.
Avant chaque scan, la CLI valide votre clé de licence et obtient un jeton d’authentification valide pendant une heure. Après trois échecs consécutifs de validation, la licence est temporairement bloquée (15 minutes). Un message clair est fourni en cas d’expiration du jeton.
Par défaut, le CLI exclut automatiquement les répertoires courants (node_modules, .git, dist, build, etc.) pour réduire la taille de l’archive, mais il inclut toujours les fichiers manifestes (package.json, requirements.txt…). La taille de l’archive est limitée à 50 Mo et un message d’erreur est affiché si ce seuil est dépassé.
Les rapports générés sont signés (HMAC‑SHA256) et horodatés. Les métadonnées incluent la version du moteur, la version du scanner et la date d’analyse. Les rapports sont stockés en Europe et conservés par défaut 7 jours, sauf configuration contraire.
Par défaut, le pipeline échoue si le rapport contient des vulnérabilités critiques > 0 ou importantes > 5. Vous pouvez personnaliser ces règles via l’option --gate (ex. score<80,critical>0). Le verdict du gate est également renvoyé par l’API via le champ gate dans le statut.
L’option --anonymize-paths remplace les chemins de fichiers dans le rapport par des empreintes SHA‑1, afin de ne pas divulguer votre arborescence. Les analyses se font néanmoins de la même manière.
Le CLI ne contient aucun moteur d’analyse. Vos sources restent privées : seuls un ZIP ou une SBOM et des métadonnées sont transmis via HTTPS. Les rapports sont signés et horodatés, puis stockés en Europe selon votre politique de rétention.
Dans vos pipelines (GitHub Actions, GitLab CI, Jenkins…), ajoutez une étape qui exécute la commande CLI avec la licence et vos paramètres. Utilisez le code de sortie 0 pour un build vert et 2 pour bloquer la merge request en cas de quality gate non satisfaite.
Pour toute question ou demande d’assistance, contactez notre équipe via le formulaire de contact.