Aller au contenu

Comment limiter un scanner à des fichiers spécifiques


Une Politique de scanner est un ensemble nommé et réutilisable de directives qui régissent le comportement des scanners auxquels elle est assignée. Sa directive File pattern matching limite un scanner aux fichiers qu'il est censé couvrir : une fois la politique assignée à un scanner sur un actif, ce scanner ne s'exécute que lorsque les fichiers modifiés du scan incluent une correspondance avec l'un des motifs — pour une Pull Request, tout fichier modifié par l'un de ses commits. Dans le cas contraire, le scan est ignoré et une vérification réussie est publiée auprès de votre fournisseur de gestion de code source (SCM).

Ce guide explique comment créer une politique avec cette directive, l'assigner à des scanners et la supprimer.


1. Créer une politique de scanner


  1. Accédez à la page Politique de scanner sous Scanner Coverage dans la navigation de gauche.

  2. Cliquez sur le bouton New Policy.

  3. Cliquez sur le champ de nom et donnez à la politique un nom qui décrit sa cible, comme Terraform only ou Trivy SCA/SBOM.

    Nouvelle politique de scanner

  4. Dans l'onglet Directives, cochez la directive File pattern matching.

  5. Dans le champ File patterns, saisissez un motif par ligne. Les motifs sont comparés aux noms de fichiers à n'importe quelle profondeur dans le dépôt et sont sensibles à la casse — consultez Pattern Syntax pour connaître les caractères génériques pris en charge.

    Pour un scanner d'infrastructure-as-code tel que Checkov, les motifs pourraient être :

    *.tf
    *.tf.json
    *.yaml
    *.yml
    Dockerfile
    

    Modifier les motifs de fichiers

  6. Cliquez sur Save.

Warning

Décocher la directive File pattern matching efface les motifs que vous avez saisis. Vous devrez les saisir à nouveau si vous réactivez la directive ultérieurement.


2. Assigner la politique à des scanners


Vous pouvez assigner une politique lors de l'orchestration des scanners, ou l'appliquer à des scanners déjà orchestrés sans les orchestrer à nouveau.

  1. Accédez à la page Scanner Coverage.

  2. Sélectionnez les organisations ou dépôts dont vous souhaitez modifier les scanners. Au moins un doit être sélectionné.

  3. Cliquez sur le bouton Actions, puis Scanner Policies.

    Action Scanner Policies

  4. La fenêtre modale Manage Scanner Policies regroupe les scanners trouvés dans votre sélection selon l'étendue d'application actuelle d'une politique — Applied to all repositories, Applied to some repositories, ou Applied to no repositories.

  5. Pour chaque scanner que vous souhaitez modifier, cliquez sur Apply et choisissez la politique dans le menu déroulant. Laissez les autres scanners sur No change.

    Appliquer une politique de scanner

  6. Vérifiez le résumé des modifications en bas de la fenêtre modale, puis cliquez sur Save. L'enregistrement des assignations depuis cette fenêtre modale ne déclenche pas de nouveaux scans ; la politique s'applique au prochain scan déclenché par un commit.

  1. Démarrez l'orchestration des scanners et sélectionnez l'onglet Advanced.

  2. Complétez les étapes Select the scanners to provision et Repositories configurations.

  3. Dans l'étape Scanner policies, chaque scanner nouvellement orchestré affiche son état actuel — Current Policy: {name}, Policies vary across repositories, ou No policy applied.

    Étape d'orchestration des politiques de scanner

  4. Pour chaque scanner que vous souhaitez modifier, cliquez sur Apply et sélectionnez une politique. Chaque scanner défini sur Apply doit avoir une politique sélectionnée avant que vous puissiez terminer.

  5. Cliquez sur Complete.

Note

Les politiques de scanner ne sont proposées que pour les scanners orchestrés via l'Orchestration Zero Touch. Un scanner qui ne peut pas recevoir de politique n'affiche aucun contrôle de politique.


3. Supprimer une politique d'un scanner


  1. Accédez à la page Scanner Coverage et sélectionnez les organisations ou dépôts à modifier.

  2. Cliquez sur le bouton Actions, puis Scanner Policies.

  3. Cliquez sur Clear pour chaque scanner qui ne devrait plus avoir de politique.

    Effacer une politique de scanner

  4. Cliquez sur Save. Ces scanners s'exécutent à nouveau sur chaque scan déclenché par un commit.


4. Modifier ou supprimer une politique


  1. Accédez à la page Politique de scanner.

  2. Ouvrez le menu d'actions sur la ligne de la politique et choisissez Edit ou Delete.

    Modifier ou supprimer une politique de scanner

  3. La modification des motifs d'une politique modifie le comportement de chaque scanner auquel elle est assignée, lors du prochain scan déclenché par un commit.

Note

Une politique encore assignée à des scanners ne peut pas être supprimée. Sa ligne indique le nombre de scanners qu'elle couvre sous Assigned Scanners, et l'action Delete reste grisée tant que ce nombre n'atteint pas zéro.

Cliquez sur le nombre pour ouvrir la page Scanner Coverage filtrée sur cette politique, puis utilisez la fenêtre modale Manage Scanner Policies comme à l'étape 3 pour effacer la politique des scanners qu'elle liste. Une fois que le nombre atteint zéro, vous pouvez supprimer la politique.

Si le nombre n'atteint pas zéro après avoir tout effacé sur cette page, cela signifie qu'elle couvre également des scanners sur des actifs archivés ou orphelins, que Scanner Coverage n'affiche pas — consultez Assigned Scanners.


5. Confirmer le comportement


Ouvrez une Pull Request qui ne touche aucun des fichiers couverts par la politique. Sur la page Scans, le scan du scanner est marqué Skipped by rules avec la raison « No files matched this scanner. », et la Pull Request reçoit une vérification réussie boostsecurity - <scanner> intitulée Nothing to scan.

Les scans déclenchés manuellement, les scans complets et le premier scan d'un actif s'exécutent toujours, indépendamment de toute politique assignée.