Чтобы выполнять проверку образов или репозиториев (для сканирования конфигурационных файлов), используемых в процессе CI/CD, вам нужно добавить в пайплайн CI/CD отдельный этап, на котором запускается сканер Kaspersky Security для контейнеров. Результаты сканирования передаются на сервер решения и отображаются в консоли управления в разделе Ресурсы → CI/CD.
Между средой CI/CD и продуктом должна быть обеспечена безопасность передачи данных от прослушивания и перехвата сетевого трафика.
Пример настройки интеграции с GitLab CI/CD
В этом примере используется специальный образ сканера со встроенными базами данных уязвимостей, размещенный в реестре образов производителя решения.
Для использования возможности сканирования образов в процессе GitLab CI/CD вам нужно включить использование GitLab Container Registry.
Настройка интеграции состоит из следующих этапов:
printf "login:password" | openssl base64 -A
где login и password – имя и пароль учетной записи в реестре образов производителя Kaspersky Security для контейнеров.
{
"auths": {
"repo.cloud.tronsec.ru": {
"auth": "base64hash"
}
}
}
где base64hash – строка, полученная на этапе 1a.
printf "login:password" | openssl base64 -A
где login и password – имя и пароль учетной записи в реестре образов производителя Kaspersky Security для контейнеров.
Чтобы добавить этап сканирования в пайплайн CI/CD, необходимо добавить в файл .gitlab-ci.yml следующие строки:
scan_image:
stage: scanner
image:
name: repo.cloud.tronsec.ru/repository/tron-customer/scanner:v1.0.1-with-db
entrypoint: [""]
variables:
SCAN_TARGET: ${CI_REGISTRY_IMAGE}:master
API_TOKEN: base64hash
В приведенном далее примере указан тэг master, вы можете указать другой тэг.
TRON_EXT_REGISTRY_USERNAME: ${TRON_EXT_REGISTRY_USERNAME}
TRON_EXT_REGISTRY_PASSWORD: ${TRON_EXT_REGISTRY_PASSWORD}
API_BASE_URL: <доменное имя>
script:
- /bin/sh /entrypoint.sh $SCAN_TARGET --stdout > artifact-result.json
artifacts:
paths:
- artifact-result.json