Файли конфігурацій
Node
Містить конфігураційні файли для запуску проекту.
/data/softpro/server/node/config/db/port_nameProject/port_nameProject.json - файл конфігів для node-cерверу.
Приклад файлу конфігурацій:
{
"atest.e-construction.gov.ua":{
"project": ["edesb"],
"sid":35,
"folder":"/data/work/edesb",
"db":"user:pass@localhost:5432/geo_admin_dabi"
},
"test.e-construction.gov.ua":{
"project": ["edesb"],
"sid":1,
"folder":"/data/work/edesb",
"db":"user:pass@localhost:5432/geo_admin_dabi"
}
}
project - назва проекту
sid - 35 (адмін посилання) || 1 (публічне посилання)
folder - папка проету
db - підключення до баз даних
configServer node
Приклад файлу конфігурацій:
{
"port": "$PORT", // порт на якому буде піднято сервер
"sessionTimeout": 7200000, // кількість чусу бездіяльності користувача на сайті до завершення сеансу
"routeTimeout": 15000, // стандартне значення таймауту для АПІ
"routeTimeoutAPI":{
"/api-user/dashboard_participant_constr_api":20000 // timout для API
},
"pg": {
"pg_pool_options": {
"max_clients": 30, // максимальна кількістть користувачів, які підключені до бази даних
"timeout_client_millis": 10000 // максимальний час бездіяльності клієнта після чого він буде відключенний від БД у мс
}
},
"redis": {
"host": "127.0.0.1", // IP-адреса redis
"port": 6379, // порт redis
"password": "pss", // пароль користувача
"reconnection_interval": 1000 // інтервал для перепідключення
},
"signServerAddress": "192.168.3.160:4001", // адреса сервісу ЕЦП
"s3": {
"region": "us-west-2", // region optional
"containerName": "containerName", // work as default
"endpoint": "http://192.168.3.160:9000", // адреса сервіса s3
"user": "accessKeyId", // login користувача s3
"password": "secretAccessKey" // пароль користувача s3
}
"sqlInjections": [], // список додаткових сигнатур для перевірки на sql injection
"xssInjections": [], // список додаткових сигнатур для перевірки на xss injection
"defaultEmailTransportSettings": {
"service": "Gmail", // назва сервісу для автовідправлекння електроних листів системою
"auth": {
"user": "order@softpro.ua", // поштова скринька
"pass": "3C};t_hVv7" // пароль від поштової скриньки
}
},
"cronTime": {
"signLogWorker": "time": "23:55", // година об якій буде запущенно планувальник. Час вказується у форматі 'HH:MM'
"rotate": "time": 86400 // період виклику cron з назвою rotate мс
},
"cronDisable": [ "signLogWorker" ], // список назв планувальників, які будуть вимкненні
"settings": {
"integration": {
"dzk": {
"clientId": "<dzk_client_id>", // ClientId для ДЗК АПІ
"clientSecret": "<dzk_client_secret>" // ClientSecret для ДЗК АПІ
},
"ovd": {
"API_AUTH": "<ovd api auth>", // Аутентифікатор для запиту ОВД
"API_KEY": "ovd api key" // Ключ для запиту ОВД
},
"nais": {
"host": "<nais_host>", // Хост адреса для запитів до НАІС АПІ
"token": "<nais_token>" // Токен для запитів до НАІС АПІ
}
},
"security": {
"clientId": "<idGovUa_client_id>", // id.gov.ua client id
"client_secret": "<idGovUa_client_secret>", // id.gov.ua client secret
"client_cert_path": "<idGovUa_client_certificate_path>", // шлях до сертифіката
"client_cert_name": "<idGovUa_client_certificate_name>", // ключ об'єкта, де вказані дані про ключ з налаштувань eusign_list
"id_gov_ua_host": "<id gov ua host name>" // Назва хоста для утентифікації за id.gov.ua
},
"eusign_list": {
"<name>": {
"key": "<name>", // назва ключа (співпадає з ключем об'єкта)
"name_file": "<key_file_name>", // глобальний шлях до ключа
"password": "<key_password>", // пароль ключа
"type": "<Media|File>", // тип ключа
"dwDevIndex": "<dwDevIndex>", // dwDevIndex
"dwTypeIndex": "<dwTypeIndex>", // dwTypeIndex
}
},
"eusign_doc": {
"<name>": {
"id": "<id>", // ідентифікатор місця підпису у системі
"key": "<name>", // назва місця підпису
"sign": "<sign name>" // назва печатки підпису
}
}
}
}
Назви планувальників вказуються відповідно до списку
Обов'зкові та не обов'язкові налаштування
Список не обов'язкових налаштувань:
- усі налаштування
config.json
у поліsettings
, окрім тих які дублюються у налаштуваннях (якщо не вказано - то береться з налаштувань програми) - усі поля у яких вказано у коментарях
default
абоoptional
значення routeTimeoutAPI
- якщо для жодної АПІ не потрібно виставити час таймауту відмінного від стандартногоcronDisable
- якщо нема потреби вимикати певні планувальникиcronTime
- якщо нема потреби виставляти час спрацювання для планувальників відмінний від стандартного. Стандартний час спарцювання описаний у розділі ПланувальникsqlInjections
- якщо не треба додавати певні сигнатури для перевірки на sqlInjectionsxssInjections
- якщо не треба додавати певні сигнатури для перевірки на xssInjections
Список обов'зкових налаштувань:
sessionTimeout
routeTimeout
redis
- не запуститься кешування та загалом додатокsignServerAddress
- не буде працювати сервіс ЕЦПs3
- не буде працювати файлове сховищеdefaultEmailTransportSettings
- не будуть відправлятися електронні листи від системиsettings
:security
:clientId
- не запуститься уся взаємодія з ДІЯ (вхід за ЕЦП, електронний підпис і тп)client_secrete
- не запуститься уся взаємодія з ДІЯ (вхід за ЕЦП, електронний підпис і тп)client_cert_path
- не запуститься уся взаємодія з ДІЯ (вхід за ЕЦП, електронний підпис і тп)client_cert_name
- не запуститься уся взаємодія з ДІЯ (вхід за ЕЦП, електронний підпис і тп)id_gov_ua_host
- не запуститься уся взаємодія з ДІЯ (вхід за ЕЦП, електронний підпис і тп)
eusign_list
- не зможе використовуватиeusign_doc
- не зможе використовувати печатки для конкретних місць підпису
Дефолтні параметри мають у коментарях вказане значення default