Analyse les fichiers d'Infrastructure as Code à la recherche de mauvaises configurations de sécurité et de vulnérabilités à l'aide de KICS, avec rapports via Bitbucket Code Insights.
Analyse vos fichiers de configuration Infrastructure as Code afin de garantir de bonnes pratiques de sécurité. Crée un rapport Code Insights de sécurité si un problème est détecté.
Ce Pipe pris en charge par Bitbucket Cloud s'appuie sur l'outil d'analyse KICS, leader du secteur, pour fournir des capacités d'analyse IaC aux clients Bitbucket. Consultez la section Détails et exemples pour plus d'informations.
Ajoutez l'extrait suivant à la section script de votre fichier bitbucket-pipelines.yml :
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: '<string>'
# SCAN_EXTRA_ARGS: '<array>' # Optional.
# CONFIG_PATH: '<string>' # Optional.
# CREATE_REPORT: "<boolean>" # Optional. Default: `true`
# FAIL_ON: "<integer>" # Optional.
# DEBUG: "<boolean>" # Optional. Default: `false`
| Variable | Utilisation |
|---|---|
| FILES_TO_SCAN_PATH (*) | Fichiers ou répertoires à analyser, séparés par ,. Exemple : "./path_to_dir,path_to_file.txt". |
| SCAN_EXTRA_ARGS | Options supplémentaires à transmettre aux commandes de scan de KICS. Si l'argument -p est passé, il étendra les fichiers ou répertoires fournis dans la variable FILES_TO_SCAN_PATH. Si l'argument --config est passé, il sera ignoré au profit de la variable CONFIG_PATH. |
| CONFIG_PATH | Chemin vers le fichier de configuration KICS. Alternative à la variable SCAN_EXTRA_ARGS. Si le mot-clé path est fourni dans le fichier de configuration, il sera ignoré au profit de la variable FILES_TO_SCAN_PATH. |
| CREATE_REPORT | Contrôle si le pipe créera des rapports Bitbucket CodeInsights à partir des résultats de l'exécution de KICS. Par défaut : true. |
| FAIL_ON | La valeur seuil du [code d'état de résultat][result status code] du scanner KICS à laquelle le pipe doit déclencher un échec. |
| DEBUG | Active des informations de débogage supplémentaires. Par défaut : false. |
(*) = variable obligatoire.
Si nécessaire, les utilisateurs peuvent enrichir leurs scans en intégrant des options de la commande de scan via la variable SCAN_EXTRA_ARGS.
De plus, les utilisateurs ont la possibilité de créer et de fournir un fichier de configuration KICS personnalisé, qui est appliqué dans le pipe bitbucket-iac-scan via la variable CONFIG_PATH. Ce fichier de configuration constitue une alternative à l'utilisation de SCAN_EXTRA_ARGS.
Une fois un fichier de configuration KICS personnalisé créé, il doit être stocké dans le dépôt de l'utilisateur. C'est là que le pipeline avec un pipe bitbucket-iac-scan sera déclenché.
Si les variables SCAN_EXTRA_ARGS et CONFIG_PATH sont toutes deux fournies avec des arguments en double, alors les arguments de la variable SCAN_EXTRA_ARGS auront une priorité plus élevée.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
Analysez les sources et le pipe doit échouer si le [code d'état du résultat][result status code] du scanner KICS est supérieur ou égal à la valeur de seuil fournie.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
FAIL_ON: 40
Exemple avec une configuration kics pouvant être utilisée dans le pipe :
kics-config.json. La clé path sera ignorée
{
"path": "assets/iac_samples",
"verbose": true,
"log-file": true,
"type": "Dockerfile,Kubernetes",
"queries-path": "assets/queries",
"exclude-paths": [
"foo/",
"bar/"
],
"output-path": "results"
}
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CONFIG_PATH: kics-config.json
Exemple avec options de scan :
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
SCAN_EXTRA_ARGS:
- "--disable-secrets"
- "--type=Dockerfile"
Ne créez pas de rapport CodeInsights :
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CREATE_REPORT: 'false'
Si vous souhaitez de l'aide avec ce pipe, ou si vous rencontrez un problème ou avez une demande de fonctionnalité, faites-le-nous savoir sur Community.
Si vous signalez un problème, veuillez inclure :
Copyright (c) 2024 Atlassian et autres. Sous licence Apache 2.0, voir le fichier LICENSE.txt.