Перейти к содержанию

Приложение 5. Параметры скриптов AppSec.Hub CLI

Общие параметры для скриптов scan_codebase, scan_artifact, scan_instance, import_results и import_report

Примечание

Корректное завершение работы скриптов возможно, только если указаны все необходимые параметры.

Параметр Обязат.
параметр
Описание Пример
--url + URL приложения AppSec.Hub --url https://hub.your.company.com
--token + Токен авторизации AppSec.Hub --token <token>
--appcode + Код приложения в БД AppSec.Hub --appcode dvja
-a Имя приложения в AppSec.Hub -a AppName
--application-name Имя приложения в AppSec.Hub --application-name AppName
--insecure Отключает проверки безопасности (например, проверку SSL-сертификатов). По умолчанию — активирован --insecure
--no-wait Если параметр задан, CLI не ожидает окончания сканирования --no-wait
--debug Если параметр задан, «log level» — DEBUG. По умолчанию «log level» — INFO --debug
--error Если параметр задан, «log level» — ERROR. По умолчанию «log level» — INFO --error
--result-file Определяет имя и расположение JSON-файла с результатами сканирования* --result-file ./result.json
--unit Связывает артефакт/кодовую базу/экземпляр приложения со структурной единицей по ее имени. Если структурная единица не существует, она будет создана. Данный параметр является устаревшим --unit Front
--unit-code Связывает артефакт/кодовую базу/экземпляр приложения со структурной единицей по ее коду. Если структурная единица не существует, она будет создана

--unit-code 12345678
--unit-name Связывает артефакт/кодовую базу/экземпляр приложения со структурной единицей по ее имени. Если структурная единица не существует, она будет создана --unit-name Front
--external-id Внешний идентификатор нового приложения. Используется при onboarding --external-id ae8f09fe-987f-11eb-a8b3-0242ac130003
--scan-initiator Информация об инициаторе сканирования (например, ссылка на задачу TeamCity) --scan-initiator https://teamcity.your.company.com/buildConfiguration/AppSecurityChecks/59843
--scan-initiator-environment Среда окружения инициатора сканирования --scan-initiator-environment test
--release-object URL релизного объекта (артефакта), на который должна быть поставлена метка в конце сканирования. Этот параметр необходим, если соответствующее действие было добавлено в security pipeline. В противном случае параметр будет проигнорирован. --release-object https://nexus.your.company.com/repository/maven-releases/com/appsecco/dvja/5.09/dvja-5.09.war

* см. раздел «Приложение 7. Результаты сканирования AppSec.Hub CLI».

Специфические параметры скрипта scan_codebase

Параметр Обязат.
параметр
Описание Пример
--codebase + Атрибуты указываются через точку с запятой:
<codebase-url>;<branch>;<commit>;<checkout-path>;<name>, где:
codebase-url* — URL кодовой базы;
branch — ветка репозитория (по умолчанию — master);
commit — коммит;
checkout-path* — директория расположения кодовой базы;
name — имя кодовой базы в AppSec.Hub.
* обязательные атрибуты
Несколько кодовых баз указываются в параметре --codebase через пробел, см. пример
--codebase "http://gitlab.service.your.company.com/test/java-web-project.git" "http://gitlab.service.your.company.com/test/web-project.git;master;;/web-project;web-project"
--branch-filter Позволяет осуществить фильтрацию сканируемых ветвей. Фильтр применяется как к основной, так и к дополнительным кодовым базам. Значение по умолчанию — соответствует параметру --branch --branch-filter "feature/*"
--branch-filter "*"
--branch-filter "develop"
--codebase-build-tool Инструмент сборки. Допустимые значения: maven, gradle, nuget, npm, pip, composer, go mod. Значение по умолчанию — maven --codebase-build-tool maven

Специфические параметры скрипта scan_artifact

Параметр Обязат.
параметр
Описание Пример
--artifact * Атрибуты указываются через точку с запятой:
<artifact-url>;<artifact-name>, где:
artifact-url* — URL репозитория артефакта;
artifact-name — имя артефакта в AppSec.Hub.
* обязательные атрибуты
Для нескольких артефактов используйте несколько параметров --artifact
--artifact "https://nexus.test.com/java-web-project:9.17;core-docker"

Специфические параметры скрипта scan_instance

Параметр Обязат.
параметр
Описание Пример
--instance-name Имя экземпляра приложения --instance-name app1_inst2
--instance-url + URL экземпляра приложения --instance-url https://your.company.com
--stage + Параметр экземпляра приложения, указываемый при его создании в системе. Допустимые значения: ST, IAT, UAT, STG, PROD --stage PROD
--instance-credentials - Логин и пароль к экземпляру приложения, если требуется авторизация. Логин и пароль указываются через точку с запятой.
Если необходимо передать несколько credentials, то параметр указывается несколько раз (см. пример)
--instance-credentials "Login1;Password1"
--instance-credentials "Login2;Password2"

Специфические параметры скрипта import_results

Параметр Обязат.
параметр
Описание Пример
--quality-gate-code Буквенно-цифровой идентификатор используемого QG. Если параметр отсутствует, проверка QG не осуществляется --quality-gate-code no-critical-issues

Параметры для взаимодействия с Checkmarx

Параметр Обязат.
параметр
Описание Пример
--cx-tool-url + URL экземпляра Checkmarx --cx-tool-url https://cx.your.company.com
--cx-project-name + Имя проекта в Checkmarx, указанном выше --cx-project-name DVJA_dvja-master
--cx-team Имя команды Checkmarx. Значение по умолчанию: CxServer --cx-team CxServer\DEV\DVJA
--cx-scan-id Идентификатор сканирования в проекте Checkmarx. При отсутствии параметра импортируются результаты последнего сканирования --cx-scan-id 1000650

Параметры для взаимодействия с Dependency-Track

Параметр Обязат.
параметр
Описание Пример
--dt-tool-url + URL экземпляра Dependency-Track --dt-tool-url http://dep-track.your.company.com
--dt-project-name + Имя проекта в Dependecy-Track --dt-project-name Dependency_Track_java-web-project-master
--dt-project-uuid + Идентификатор проекта в Dependecy-Track --dt-project-uuid 619821d4-368d-4f5e-a52f-18d73d97ecb9

Параметры для взаимодействия с PT Application Inspector

Параметр Обязат.
параметр
Описание Пример
--ptai-tool-url + URL экземпляра PT AI --ptai-tool-url https://ptai.your.company.com
--ptai-project-name + Название проекта в PT AI --ptai-project-name your_project_name
--ptai-project-language + Язык проекта в PT AI --ptai-project-language Java
--ptai-scan-results-id + Идентификатор сканирования, выполненного в PT AI --ptai-scan-results-id c40b439e-0312-4a38-9bb8-8cea931b3bd9

Параметры для взаимодействия с AppSec.Track

Параметр Обязат.
параметр
Описание Пример
--appsec-track-tool-url + URL экземпляра AppSec.Track --appsec-track-tool-url https://track.your.company.com
--appsec-track-team + Название команды в AppSec.Track --appsec-track-team your_team_name
--appsec-track-application + Название приложения в AppSec.Track --appsec-track-application your_app_name
--appsec-track-scan-guid + Идентификатор отчета приложения в Appsec.Track ---appsec-track-scan-guid 6c4ee61b-58df-9x99-z13v-954c1a45rtev

Параметры для взаимодействия со Стингрей

Параметр Обязат.
параметр
Описание Пример
--mdast-tool-url + URL экземпляра Стингрей --mdast-tool-url https://stingray.your.company.ru
--mdast-project-name
или
--mdast-scan-id
+ Необходимо указать:
ИЛИ название проекта в Стингрей, в этом случае импортируются результаты последнего сканирования в проекте;
ИЛИ scanId сканирования в Стингрей, в этом случае импортируются результаты указанного сканирования
--mdast-project-name=Project1
или
--mdast-scan-id=555

Параметры для взаимодействия с Aqua Security

Параметр Обязат.
параметр
Описание Пример
--aqua-tool-url + URL экземпляра Aqua Security --aqua-tool-url https://aqua.your.company.com
--aqua-registry + Имя репозитория (registry) в Aqua Security --aqua-registry aqua-demo_java-web-project-docker

Параметры для взаимодействия с кодовой базой

Параметр Обязат.
параметр
Описание Пример
--codebase + Атрибуты этого параметра указываются через точку с запятой:
<codebase-url>;<branch>;<commit>;<checkout-path>;<name>, где: codebase-url* — URL кодовой базы;
branch — ветка репозитория (по умолчанию — master);
commit — коммит;
checkout-path* — директория расположения кодовой базы;
name — имя кодовой базы в AppSec.Hub.
* обязательные атрибуты
Для указания нескольких кодовых баз используется несколько параметров -- codebase
--codebase "https://github.com/appsecco/dvja.git;master;9fe67******4f0888;/;dvja-master"
--branch-filter Позволяет осуществить фильтрацию сканируемых ветвей. Фильтр применяется как к основной, так и к дополнительным кодовым базам. Значение по умолчанию — соответствует параметру --branch --branch-filter "feature/*"
--branch-filter "*"
--branch-filter "develop"
--build-tool Инструмент сборки. Допустимые значения: maven, gradle, nuget, npm, pip, composer, go mod. Значение по умолчанию — maven --build-tool maven

Атрибуты кодовой базы

Параметр Обязат.
параметр
Описание Пример
codebase-url + URL кодовой базы https://github.com/appsecco/dvja.git
branch Ветка репозитория. Значение по умолчанию — master master
commit Коммит 9fe67fc0e3a75e05b4dfe906dfa65e495b4f0888
checkout-path + Директория расположения кодовой базы /
or
/conf
name Имя кодовой базы в AppSec.Hub. Бекэнд AppSec.Hub должен использовать appcode, codebase-url и branch dvja-master

Параметры для взаимодействия с артефактом

Параметр Обязат.
параметр
Описание Пример
--artifact + Атрибуты этого параметра указываются через точку с запятой:
<artifact-url>;<artifact-name>, где:
artifact-url* — URL репозитория артефакта;
artifact-name — имя артефакта в AppSec.Hub.
* обязательные атрибуты
--artifact "https://nexus.your.company.com/repository/maven-releases/com/appsecco/dvja/5.09/dvja-5.09.war;web-maven-test"

Специфические параметры скрипта import_report

Параметр Обязат.
параметр
Описание Пример
--report-file + JSON-файл с информацией о проблемах безопасности --report-file c:\dev\report.json
--quality-gate-code Буквенно-цифровой идентификатор используемого QG. Если параметр отсутствует, проверка QG не осуществляется --quality-gate-code no-critical-issues
К началу