Skip to main content

Файли конфігурацій

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 - якщо не треба додавати певні сигнатури для перевірки на sqlInjections
  • xssInjections - якщо не треба додавати певні сигнатури для перевірки на 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