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

Приложение 1. Конфигурационный файл .env

Параметры конфигурационного файла .env

Для удобства ряд системных настроек AppSec.Hub вынесен в конфигурационный файл .env. Если рекомендуемая директория установки AppSec.Hub не изменена, данный файл располагается в директории /opt/apphub/.

Параметр Описание Значение по умолчанию
pgsql_url Имя сервера (либо контейнера), где развернут экземпляр PostgreSQL postgresql
pgsql_port Порт доступа к экземпляру PostgreSQL 5432
hub_db_name Наименование БД Hubdb
pgsql_admin_user Имя пользователя с административным доступом к основной схеме БД <admin_name>
pgsql_admin_password Пароль пользователя с административным доступом к основной схеме БД <Password>
hub_app_password Пароль пользователя <Password>
hub_auth_password Пароль пользователя для сервиса аутентификации <Password>
hub_adm_password Пароль пользователя AppSec.Hub с правами администратора <Password>
hub_bi_password Пароль пользователя с правами работы с AppSec.Hub DWH <Password>
hub_core_version Текущая версия hub-core 2025.3.2
hub_ui_version Текущая версия hub-ui 2025.3.2
hub_db_version Текущая версия hub-db 2025.3.2
hub_air_version Текущая версия hub-air 2025.3.2
hub_gateway_version Текущая версия hub-gateway 2025.3.2
hub_issue_version Текущая версия hub-issue 2025.3.2
hub_issue_rule_version Текущая версия hub-issue-rule 2025.3.2
hub_sso_version Текущая версия hub-sso 2025.3.2
hub_metrics_version Текущая версия hub-metrics 2025.3.2
hub_metrics_bridge_version Текущая версия hub-metrics-bridge 2025.3.2
hub_pipeline_version Текущая версия hub-pipeline 2025.3.2
hub_scheduler_version Текущая версия hub-scheduler 2025.3.2
hub_pipeline_agent_version Текущая версия hub-pipeline-agent - указывается в этом файле только в случае установки AppSec.Hub и сервиса hub-pipeline на одном хосте, если нет - то в своем .env файле 2025.3.2
rabbitmq_version Текущая версия rabbitmq 3.13-management
IP_EXTERNAL Внешний IP 0.0.0.0
MODEL_USE_ENCRYPTION Использование шифрования 0
MODEL_SECRET_KEY Ключ шифрования моделей AVC change it
gateway_jwt_token Ключ подписи jwt-токена для сервиса gateway change it
CONSUL_TOKEN Токен для доступа к сервису consul change it
SSO_ENC_KEY Ключ шифрования SSO change it
HUB_URL URL AppSec.Hub, например, https://hub.your.domain.local change it
metrics_pg_user Имя пользователя с административным доступом БД метрик metrics
metrics_pg_password Пароль пользователя с административным доступом БД метрик change it
metrics_db_password Пароль пользователя БД change it
metrics_username Имя пользователя метрик admin
metrics_password Пароль пользователя метрик change it
metrics_scheduler_db_password Пароль пользователя scheduler БД метрик change it
RABBITMQ_USERNAME Имя пользователя RabbitMQ user
RABBITMQ_PASSWORD Пароль пользователя RabbitMQ change it
ENC_KEY Ключ шифрования. Значение должно совпадать со значением параметра encrypt.key в файле /opt/apphub/config/hub-core/app.properties (см. «Приложение 4. Конфигурационный файл app.properties») change it
LOGS_LIFETIME_DAYS Логи хранятся в течение указанного количества дней, а затем удаляются 30
ARCHIVE_LIFETIME_DAYS Архивы хранятся в течение указанного количества дней, а затем удаляются 3
SCHEDULER_INTERVAL_HOURS Интервал запуска инструмента очистки, как часто будет запускаться проверка на возраст логов и архивов (в часах) 24
CONSUL_SCHEDULER_INTERVAL_MINUTES Интервал запуска проверки регистрации в consul (если нода отсоединилась от consul, то она вновь зарегистрируется (в минутах)) 60
CUSTOM_CA_PATH Путь до самоподписанного сертификата, который можно добавлять в агенты сканирования для того, чтобы можно было интегрироваться со сканирующими инструментами во внутреннем контуре change it
executionLogEnabled Включает логирование затраченного времени на выполнение методов в сервисе false
executionLogMinDurationMsToLog Порог времени выполнения метода в миллисекундах (если на выполнение будет затрачено меньше времени, он не будет логироваться) 10000
DB_POOL_SIZE Размер пула соединений с базой данных 10

Пример конфигурационного файла .env

Примечание

Приведенный файл является примером. Заданные в нем параметры необходимо заменить своими значениями, см. раздел «Установка, запуск и резервное копирование».

pgsql_admin_password=changeit
pgsql_url=postgresql
pgsql_port=5432

hub_db_name=hubdb

hub_app_password=changeit
hub_auth_password=changeit
hub_adm_password=changeit
hub_bi_password=changeit

hub_core_version=2025.3.2
hub_ui_version=2025.3.2
hub_db_version=2025.3.2
hub_air_version=2025.3.2
hub_gateway_version=2025.3.2
hub_issue_rule_version=2025.3.2
hub_issue_version=2025.3.2
hub_sso_version=2025.3.2
hub_metrics_version=2025.3.2
hub_metrics_bridge_version=2025.3.2
hub_pipeline_version=2025.3.2
hub_scheduler_version=2025.3.2
# hub-pipeline-agent - указывается в этом файле только в случае установки AppSec.Hub и сервиса hub-pipeline на одном хосте
# если на разных - то в своем .env файле
hub_pipeline_agent_version=2025.3.2
rabbitmq_version=3.13-management

pipeline_db_name=pipeline_db

IP_EXTERNAL=0.0.0.0
MODEL_USE_ENCRYPTION=0
MODEL_SECRET_KEY="changeit"
MODEL_DEFAULT_PRACTICE=none
MODEL_LOWER_LIMIT="0.8"
MODEL_MIN_FREE_DISK_SPACE="100"
gateway_jwt_token=<см. раздел «Установка, запуск и резервное копирование»>
CONSUL_TOKEN=<см. раздел «Установка, запуск и резервное копирование»>
SSO_ENC_KEY=<см. раздел «Установка, запуск и резервное копирование»>
HUB_URL=<URL AppSec.Hub, например, https://hub.your.domain.local>

metrics_pg_user=metrics
metrics_pg_password="changeit"
metrics_pg_url=metrics-db
metrics_db_password="changeit"
metrics_host=http://hub-superset
metrics_port=8088
metrics_username=admin
metrics_password="changeit"
metrics_database_url="postgresql+psycopg2://metrics_user:%s@metrics-db:5432/metrics_data"
metrics_scheduler_db_password="changeit"

ARCHIVE_FOLDER=/app/archive_folder
AUTH_EXPIRED="365"
AUTH_SCHEME=none
AUTH_SECRET_KEY=none
AUTH_USE="0"
CONSUL_HOST=http://consul
CONSUL_PORT="8500"
ENC_KEY="changeit"
GRPC_ADDRESS="changeit"
GRPC_USE_TLS=true

# Количество блоков с переменными GRPC_ID, GRPC_NAME, GRPC_PORT и GRPC_TAGS - по количеству пайплайн-агентов,
# под каждый агент должен быть создан свой блок.
# ВАЖНО: Для того чтобы ноды были видны в UI в разделе Nodes,
# переменные GRPC_ID, GRPC_NAME и GRPC_TAGS содержать слово "node"
GRPC_ID=hub-pipeline-agent-1-pipeline-node
GRPC_NAME=hub-pipeline-agent-1-pipeline-node
GRPC_PORT="50052"
GRPC_TAGS=["hub-pipeline-agent-1-pipeline-node", "grpc-service"]

LOG_BASE_PATH=/app/scans_folder/logs/node.log
LOG_CONSOLE="1"
LOG_FILE="0"
LOG_LEVEL=INFO
PIPELINE_SERVICE_NAME=grpc-pipeline-50053
PIPELINE_SERVICE_HOST=<адрес сервиса в файле docker-compose.yml>
PIPELINE_SERVICE_PORT=50053

RABBITMQ_HOST=rabbitmq
RABBITMQ_AMQP_PORT=5672
RABBITMQ_USERNAME=user
RABBITMQ_PASSWORD="changeit"
RABBITMQ_MANAGEMENT_PORT="15672"
RABBITMQ_EXCHANGE=
RABBITMQ_PORT="5672"
RABBITMQ_ROUTING_KEY=super
RABBITMQ_USER=user
SCANS_FOLDER=/app/scans_folder

ENC_KEY="changeit"
GRPC_USE_TLS=true

USE_GRPC_SECURITY=false
GRPC_AUTHORITY=<адрес хоста с пайплайн-агентами>

LOGS_LIFETIME_DAYS="30"
ARCHIVE_LIFETIME_DAYS="3"
SCHEDULER_INTERVAL_HOURS="24"
CONSUL_SCHEDULER_INTERVAL_MINUTES="60"
# В строке ниже замените /app/custom_ca.crt на свой путь до самоподписанного сертификата
CUSTOM_CA_PATH=/app/custom_ca.crt

# Логирование с временными метками
executionLogEnabled=false
executionLogMinDurationMsToLog=10000

# Размер пула соединений с базой данных
DB_POOL_SIZE=10
К началу