feat: ОКИИ — ОКВЭД (импорт+DaData), доменное имя, поля 236 приказа ФСТЭК

- ОКВЭД: починен импорт (split по запятым/точкам с запятой), добавлен okvedExtra и domainName в DEFAULT_SETTINGS + merge полей по var в load_settings (старый import_settings.json теперь дополняется)
- DaData: проверка и подстановка основного/доп. ОКВЭД
- Вкладка «Организация»: поле «Доменное имя и внешний IP» + импорт из опросника
- Вкладка «Объекты КИИ»: поля 236 приказа — сведения (назначение, сфера, тип, архитектура, типовой отраслевой объект), субъект (12 полей), сети и ПО (категория сети, оператор, цель/способ взаимодействия, ПО/аппаратные средства, ОС, прикладные), безопасность (нарушитель, угрозы, инциденты, показатели критериев, обоснование, орг./тех. меры)
- importer: распознавание полей 236 из опросника, variables: новые переменные шаблонов
This commit is contained in:
2026-08-04 14:42:33 +04:00
parent ce1b56066a
commit 2037925986
7 changed files with 502 additions and 14 deletions
+9 -1
View File
@@ -67,6 +67,8 @@ DEFAULT_SETTINGS = {
_f('ОГРН', 'ogrn', keywords=r'огрн'),
_f('КПП', 'kpp', keywords=r'кпп'),
_f('Основной ОКВЭД', 'okved', keywords=r'основной оквэд'),
_f('Дополнительные ОКВЭД', 'okvedExtra', keywords=r'дополнительные оквэд'),
_f('Доменное имя и внешний сетевой адрес', 'domainName', keywords=r'доменное имя и внешний сетевой адрес'),
_f('Должность руководителя', 'chiefPosition', keywords=r'должность руководителя'),
_f('ФИО руководителя', 'chiefFio', keywords=r'фио руководителя'),
_f('Должность ответственного за ПДн', 'ispdnPosition', keywords=r'должность.*защит.*информ|должность.*администрат'),
@@ -117,7 +119,13 @@ def load_settings(path=None):
merged = dict(DEFAULT_SETTINGS)
for k, v in loaded.items():
if k == 'fields' and isinstance(v, list):
merged['fields'] = v
# Мержим поля по var: поля из файла + недостающие из дефолта
by_var = {f.get('var'): f for f in v}
for df in DEFAULT_SETTINGS.get('fields', []):
dv = df.get('var')
if dv and dv not in by_var:
by_var[dv] = df
merged['fields'] = list(by_var.values())
else:
merged[k] = v
return merged