Personnalisation du Pipeline ZTP¶
L'Orchestration Zero Touch (ZTP) installe le pipeline Boost Security dans votre projet scanner Boost : le dépôt ou projet qui exécute les scans, tel que le dépôt .boost sur GitHub ou Bitbucket. Vous pouvez adapter ce pipeline à la manière dont les jobs s'exécutent dans votre système CI/CD, mais pas à ce qui est scanné.
Warning
L'action Update Template écrase le pipeline dans le projet scanner Boost avec le dernier pipeline Boost Security, et toutes les modifications que vous y avez apportées sont perdues. Consultez Actions ZTP.
Personnalisations prises en charge¶
Personnalisez le pipeline uniquement pour la manière dont le job s'exécute dans votre système CI/CD, par exemple :
- les runners ou pools d'agents sur lesquels le job s'exécute ;
- les proxies ;
- les miroirs de registre ;
- la mise en cache.
Pour changer ce qui est scanné, ou quand un scanner s'exécute, utilisez une Politique de Scanner plutôt que de modifier le pipeline.
Ne jamais terminer le job avant l'exécution du CLI Boost Security
N'ajoutez pas d'étape qui termine le job de manière anticipée, par exemple pour ignorer les commits effectués par des bots ou les pull requests ou merge requests en mode brouillon. La vérification de la pull request ou de la merge request reste en attente, et chaque scan se termine par un Timeout.
Options de connectivité¶
Le pipeline lit les variables suivantes pour atteindre les images du scanner et le registre du scanner via votre propre infrastructure. L'endroit où vous les définissez dépend de votre SCM :
- GitLab : définissez-les comme variables CI/CD dans les paramètres du projet scanner Boost. Elles sont conservées lorsque vous mettez à jour le modèle. Le proxy de dépendances propre à GitLab est également pris en charge nativement : consultez Utiliser un proxy de conteneur Docker.
- Autres SCM : définissez-les directement dans la définition du pipeline. Update Template les écrase, donc redéfinissez-les après chaque mise à jour.
| Variable | Utilisez-la pour |
|---|---|
CI_DOCKER_PROXY |
Récupérer les images du scanner via votre propre registre Docker. Définissez-la avec l'hôte de ce registre. Le job doit être connecté à ce registre (docker login) avant que les images soient récupérées. |
BOOST_SCANNER_REGISTRY_REPO |
Utiliser votre propre copie du registre du scanner. Définissez-la avec l'URL d'un dépôt Git accessible publiquement via HTTPS. La valeur par défaut est le registre de scanner Boost Security. Pour utiliser une branche spécifique, ajoutez-la après un #, par exemple https://github.com/boost-community/scanner-registry#<branch>. |
Warning
Une copie du registre du scanner ne reçoit pas les mises à jour de scanner publiées par Boost Security, et cela peut entraîner des configurations non prises en charge. Utilisez une copie avec prudence.
Azure DevOps : Choisir le pool d'agents¶
Sur Azure DevOps, ne modifiez pas le pipeline standard pour changer son pool d'agents. Créez plutôt un pipeline wrapper dans le projet scanner Boost qui extends: le pipeline standard (azure-pipelines.yml par défaut) et définit pool:. Les mises à jour du modèle continuent alors de s'appliquer au pipeline standard, et votre paramètre de pool est conservé.
Le wrapper doit déclarer les paramètres du pipeline standard et les transmettre. Dans cet exemple, remplacez Azure Pipelines, le pool hébergé par Microsoft, par le nom de votre pool d'agents :
pool:
name: Azure Pipelines
parameters:
- name: task_name
type: string
- name: task_display_name
type: string
- name: trigger_id
type: string
extends:
template: azure-pipelines.yml
parameters:
task_name: ${{ parameters.task_name }}
task_display_name: ${{ parameters.task_display_name }}
trigger_id: ${{ parameters.trigger_id }}