Appearance
Конфигурация сервисов
Конфигурация сервиса Security
Логгер
Ключ | Описание |
---|---|
security.log.lvl | Уровень логгирования приложения 5 - debug 4 - info 3 - warning 2 - error Пример env: POTENTIAL_SECURITY_LOG_LVL=3 |
security.log.path | Путь до лога сервиса Пример env: POTENTIAL_SECURITY_LOG_PATH=/tmp/next_box/security.log |
пример части конфигурации в yml конфиге
yaml
security:
log:
lvl: 3
path: /tmp/next_box/security.log
Http сервер
Ключ | Описание |
---|---|
security.http.host | Адрес http сервера Пример env: POTENTIAL_SECURITY_HTTP_HOST=0.0.0.0 |
security.http.port | Порт http сервера Пример env: POTENTIAL_SECURITY_HTTP_PORT=6038 |
security.http.max_multipart_body_size | Максимальный размер тела, при мультипарт запросах POTENTIAL_SECURITY_HTTP_MAX_MULTIPART_BODY_SIZE=0 |
security.http.read_timeout | Максимальная продолжительность чтения всего запроса, включая текст. Нулевое или отрицательное значение означает, что тайм-аута не будет. POTENTIAL_SECURITY_HTTP_READ_TIMEOUT=0 |
security.http.write_timeout | Максимальное время до истечения времени ожидания записи ответа. Оно сбрасывается всякий раз, когда считывается заголовок нового запроса. Как и ReadTimeout, оно не позволяет обработчикам принимать решения для каждого отдельного запроса. Нулевое или отрицательное значение означает, что тайм-аута не будет. Пример env: POTENTIAL_SECURITY_HTTP_WRITE_TIMEOUT=0 |
security.internal_http.mtls_enable | Включение шифрование трафика mTLS между сервисами NB. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_MTLS_ENABLE=false |
security.internal_http.server_cert_key_path | Приватный ключ сервера для mTLS. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_SERVER_CERT_KEY_PATH=./host.docker.internal.key |
security.internal_http.server_cert_path | Сертификат сервера для mTLS. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_SERVER_CERT_PATH=./host.docker.internal.crt |
security.internal_http.client_cert_key_path | Приватный ключ клиента для mTLS. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_CLIENT_CERT_KEY_PATH=./client.key |
security.internal_http.client_cert_path | Сертификат сервера для mTLS. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_CLIENT_CERT_PATH=./client.crt |
security.internal_http.ca_cert_path | Корневой сертификат для mTLS. Пример env: POTENTIAL_SECURITY_INTERNAL_HTTP_CA_CERT_PATH=./cert.crt |
пример части конфигурации в yml конфиге
yaml
security:
http:
host: 0.0.0.0
max_multipart_body_size: 0
port: 6038
read_timeout: 0
write_timeout: 0
internal_http:
ca_cert_path: ./cert.crt
client_cert_key_path: ./client.key
client_cert_path: ./client.crt
mtls_enable: false
server_cert_key_path: ./host.docker.internal.key
server_cert_path: ./host.docker.internal.crt
База данных
Ключ | Описание |
---|---|
security.database.dsn | Dsn для доступа к базе данных в формате: postgres://<login>:<password>@<address>:<port>/security" login - логин базыpassword - пароль от базыaddress - адрес до базыport - порт до базыПример env: POTENTIAL_SECURITY_DATABASE_DSN=postgres://admin:admin@127.0.0.1:5432/security |
пример части конфигурации в yml конфиге
yaml
security:
database:
dsn: postgres://admin:admin@127.0.0.1:5432/security
Общие настройки сервиса
Ключ | Описание |
---|---|
security.service.token | Токен для межсервисного общения. Такой же токен должен быть у каждого сервиса nextbox. Пример env: POTENTIAL_SECURITY_SERVICE_TOKEN=qwe123 |
security.service.name | Название сервиса Пример env: POTENTIAL_SECURITY_SERVICE_NAME=Security |
security.service.route_name | Название роута сервиса, лучше не менять, иначе возможны проблемы в общении между сервисами! Пример env: POTENTIAL_SECURITY_SERVICE_ROUTE_NAME=security |
security.service.back_url | Адрес по которому обращаются к сервису другие сервисы NB. Пример env: POTENTIAL_SECURITY_SERVICE_BACK_URL=http://127.0.0.1:6038 |
security.service.instance_number | Номер сервиса. Используется для горизонтального масштабирования сервисов. Пример env: POTENTIAL_SECURITY_SERVICE_INSTANCE_NUMBER=1 |
security.discovery.url | Адрес discovery сервиса в NB. В котором регистрируются все сервисы в NB Пример env: POTENTIAL_SECURITY_DISCOVERY_URL=http://127.0.0.1:6001 |
security.settings.path | Путь до файла настроек сервиса. Пример env: POTENTIAL_SECURITY_SETTINGS_PATH=/var/nextbox/security/settings.json |
пример части конфигурации в yml конфиге
yaml
security:
service:
back_url: http://127.0.0.1:6038
instance_number: 1
name: Security
route_name: security
token: qwe123
discovery:
url: http://127.0.0.1:6001
settings:
path: /var/nextbox/security/settings.json
Безопасность
Ключ | Описание |
---|---|
security.tokens.sign_key | Секретный ключ для подписи авторизационных JWT токенов. Пример env: POTENTIAL_SECURITY_TOKENS_SIGN_KEY=qwe123 |
пример части конфигурации в yml конфиге
yaml
security:
tokens:
sign_key: qwe123
Хранилище
Ключ | Описание |
---|---|
security.file_system.path | Путь до репозитория в котором будут храниться файлы. Пример env: POTENTIAL_SECURITY_FILE_SYSTEM_PATH=/repo |
security.file_system.tmp | Путь до временной директории. Пример env: POTENTIAL_SECURITY_FILE_SYSTEM_TMP=/repo/tmp |
пример части конфигурации в yml конфиге
yaml
security:
file_system:
path: "/repo"
Настройки rabbitmq
Ключ | Описание |
---|---|
security.rabbit_mq.user | Логин пользователя в rabbitmq. Пример env: POTENTIAL_SECURITY_RABBIT_MQ_USER=guest |
security.rabbit_mq.password | Пароль пользователя в rabbitmq. Пример env: POTENTIAL_SECURITY_RABBIT_MQ_PASSWORD=guest |
security.rabbit_mq.host | Адрес сервера rabbitmq. Пример env: POTENTIAL_SECURITY_RABBIT_MQ_HOST=127.0.0.1 |
security.rabbit_mq.port | Порт сервера rabbitmq. Пример env: POTENTIAL_SECURITY_RABBIT_MQ_PORT=5672 |
security.rabbit_mq.vhost | vhost rabbitmq. Пример env: POTENTIAL_SECURITY_RABBIT_MQ_VHOST= |
security.rabbit_mq.num_workers | Количество потоков параллельной обработки из очереди загруженных файлов Пример env: POTENTIAL_SECURITY_RABBIT_MQ_NUM_WORKERS=10 |
пример части конфигурации в yml конфиге
yaml
security:
rabbit_mq:
host: 127.0.0.1
password: guest
port: "5672"
user: guest
vhost: ""
num_workers: 1
Настройки хранения
Ключ | Описание |
---|---|
security.security.enabled | Включить или выключить проверку файлов. Пример env: POTENTIAL_SECURITY_SECURITY_ENABLED=false |
security.security.storage_duration | Время хранения файлов в карантине в часах. Пример env: POTENTIAL_SECURITY_SECURITY_STORAGE_DURATION=720 |
пример части конфигурации в yml конфиге
yaml
security:
security:
enabled: true
storage_duration: 720
Настройки интеграции
Ключ | Описание |
---|---|
security.service[0].name | Название интеграции. |
security.service[0].method | Тип http запроса, например POST. |
security.service[0].callback | Endpoint куда слать запрос для проверки файла. |
пример части конфигурации в yml конфиге
yaml
integrations:
service:
- name: Kesl
method: POST
callback: http://kesl/security/check
- name: Infowatch
method: POST
callback: http://infowatch/security/check
Конфигурация сервиса infowatch
Общие настройки
Ключ | Описание |
---|---|
infowatch.push_api_address | Адрес (обычно это ip address с портом 9101) развернутого инстанса infowatch. Пример env: POTENTIAL_INFOWATCH_PUSH_API_ADDRESS=http://192.168.1.10:9101 |
infowatch.export_api_address | Адрес export api(должен быть доменным именем с https). Пример env: POTENTIAL_INFOWATCH_PUSH_API_ADDRESS=https://infowatch.my.domain.ru |
infowatch.token | Токен выписывается в интерфейсе infowatch нужен для валидации запросов. Пример env: POTENTIAL_INFOWATCH_TOKEN=asdkl123laasdopp |
infowatch.company | Берется из лицензии, которую предоставляет infowatch. Пример env: POTENTIAL_INFOWATCH_COMPANY=OOO_Your_company |
infowatch.http.port | Http порт текущего сервиса. Пример env: POTENTIAL_INFOWATCH_HTTP_PORT=8080 |
infowatch.security_url | Адрес сервиса security. Пример env: POTENTIAL_INFOWATCH_SECURITY_URL=http://security:8080 |
Конфигурация сервиса kesl
Общие настройки
Ключ | Описание |
---|---|
kesl.scan_url | Адрес kesl с endpoint сканирования файлов. Пример env: http://192.168.1.10/scans |
kesl.http.port | Http порт текущего сервиса. Пример env: POTENTIAL_KESL_HTTP_PORT=8081 |
kesl.security_url | Адрес сервиса security. Пример env: POTENTIAL_KESL_SECURITY_URL=http://security:8080 |