Сканирует файлы Infrastructure as Code на предмет ошибок конфигурации безопасности и уязвимостей с помощью KICS, с отчётностью через Bitbucket Code Insights.
Сканирует файлы конфигурации Infrastructure as Code, чтобы обеспечить соблюдение надлежащих практик безопасности. Создаёт отчёт о безопасности Code Insights, если обнаружена проблема.
Этот Pipe, поддерживаемый Bitbucket Cloud, использует ведущий отраслевой инструмент сканирования KICS для предоставления возможностей сканирования IaC клиентам Bitbucket. Дополнительную информацию см. в разделе «Детали и примеры».
Добавьте следующий фрагмент в раздел script вашего файла 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`
| Переменная | Использование |
|---|---|
| FILES_TO_SCAN_PATH (*) | Файлы или каталоги для сканирования, разделённые ,. Пример: "./path_to_dir,path_to_file.txt". |
| SCAN_EXTRA_ARGS | Дополнительные параметры для передачи в команды сканирования KICS. Если передан аргумент -p, он расширит файлы или каталоги, указанные в переменной FILES_TO_SCAN_PATH. Если передан аргумент --config, он будет проигнорирован в пользу переменной CONFIG_PATH. |
| CONFIG_PATH | Путь к файлу конфигурации KICS. Альтернатива переменной SCAN_EXTRA_ARGS. Если внутри файла конфигурации указан ключ path, он будет проигнорирован в пользу переменной FILES_TO_SCAN_PATH. |
| CREATE_REPORT | Управляет тем, будет ли pipe создавать отчёты Bitbucket CodeInsights на основе результатов выполнения KICS. По умолчанию: true. |
| FAIL_ON | Пороговое значение [кода статуса результата][result status code] сканера KICS, при котором pipe должен вызывать сбой. |
| DEBUG | Включить дополнительную отладочную информацию. По умолчанию: false. |
(*) = обязательная переменная.
При необходимости пользователи могут расширить свои проверки, добавив параметры из команды сканирования с помощью переменной SCAN_EXTRA_ARGS.
Кроме того, у пользователей есть возможность создать и предоставить пользовательский файл конфигурации KICS, который применяется в pipe bitbucket-iac-scan через переменную CONFIG_PATH. Этот файл конфигурации служит альтернативой использованию SCAN_EXTRA_ARGS.
После создания пользовательской конфигурации KICS она должна быть сохранена в репозитории пользователя. Именно там будет запускаться pipeline с pipe bitbucket-iac-scan.
Если обе переменные SCAN_EXTRA_ARGS и CONFIG_PATH предоставлены с дублирующимися аргументами, то аргументы из переменной SCAN_EXTRA_ARGS будут иметь более высокий приоритет.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
Просканируйте исходники, и конвейер должен завершиться с ошибкой, если [код статуса результата][result status code] сканера KICS больше или равен заданному пороговому значению.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
FAIL_ON: 40
Пример с конфигурацией kics, которую можно использовать в конвейере:
kics-config.json. Ключ path будет проигнорирован
{
"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
Пример с параметрами сканирования:
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"
Не создавайте отчёт CodeInsights:
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CREATE_REPORT: 'false'
Если вам нужна помощь с этим pipe, или у вас возникла проблема или запрос на новую функцию, сообщите нам в Community.
Если вы сообщаете о проблеме, пожалуйста, укажите:
Copyright (c) 2024 Atlassian and others. Лицензировано под Apache 2.0, см. файл LICENSE.txt.