Commit Graph
43 Commits
Author SHA1 Message Date
prog1764 6c2e4a0c38 feat: подбор угроз — инвертированная логика (все угрозы минус неактуальные)
- threat_rules: по умолчанию актуальны ВСЕ угрозы БДУ ФСТЭК, исключаются
  заведомо неактуальные: нет интернета → убраны удалённый доступ/веб/почта/
  беспроводные/DDoS/облачные/грид; АСУ → убраны BIOS/грид/виртуализация/браузер
  (теперь 170-200 угроз на объект вместо 15 «самых похожих»)
- _has_internet уточнён: «Отсутствует» у оператора / «изолирован» / «не требуется»
  → внешней сети нет; сеть общего пользования или реальный оператор → есть
- verify.suggest_threats_ai: свежий перечень ФСТЭК (227 угроз) передаётся в промт,
  ИИ выбирает из него, а не из устаревших знаний; + человекочитаемая сводка объекта
- ui: кнопки программа/ИИ без лимита 20; после подбора угрозы сохраняются в модель
  (_collect_is) — при открытии словаря галочки выбранных угроз стоят
- models.from_dict: фильтрация неизвестных полей вложенных объектов — старые файлы
  с удалёнными полями (attacker_characteristics) больше не падают
2026-08-04 17:59:44 +04:00
prog1764 8569b478d4 fix: вернул «+ Добавить» у организационных и технических мер
- _sec_row: новый параметр allow_add — ручное добавление показывается
  даже при наличии словаря
- орг. и тех. меры: allow_add=True (может пригодиться), остальные словарные
  списки (угрозы, инциденты, критерии) — по-прежнему только из словаря
2026-08-04 17:51:17 +04:00
prog1764 6206c867c7 fix: удалено поле «Характеристика нарушителя» (придумано, в опроснике нет)
- убрано из вкладки «Безопасность» (UI), модели InformationSystem,
  маппингов _collect_is/_on_is_select, _copy_is, _apply_imported_data,
  variables.py и данных для ИИ-проверки
- «Категория нарушителя» остаётся (из варианта 3 Кости)
2026-08-04 17:50:22 +04:00
prog1764 5b318eef88 feat: окно «Показатели критериев значимости» по таблице ПП РФ № 127
- кнопка «📋 Заполнить по таблице ПП № 127» в вкладке «Безопасность»
- окно 860x640 со скроллом: 5 критериев (социальная, политическая,
  экономическая, экологическая, оборонная), 12 показателей,
  у каждого выбор значения 1-4 с описанием шкалы
- объединены показатели и обоснование в одном окне (общее поле)
- «🧮 Рассчитать категорию»: по максимальному баллу → 1/2/3/без категории
  (4→1-я, 3→2-я, 2→3-я), результат пишется в категорию значимости объекта
- «💾 Сохранить»: заполняет список показателей и обоснование
- словарь criteria_127.json (формулировки можно править файлом)
2026-08-04 17:48:40 +04:00
prog1764 38eae4b16f fix: вкладка «Безопасность» — убраны кнопки ручного «+ Добавить» у словарных списков
- угрозы, инциденты, критерии, орг./тех. меры — только из словаря (-, ✏️, 📚)
- «+» остался только у «Обоснования значений показателей» (словаря нет)
2026-08-04 17:46:07 +04:00
prog1764 7158a90b76 feat: вкладка «Безопасность» — коды УБИ, автоподбор угроз (программа/ИИ), сравнение, новый UI
- угрозы ФСТЭК теперь с кодами: «УБИ.001 Угроза …» (парсинг кода из БДУ, 227 шт)
- threat_rules.py — логика программы: по характеристикам объекта (тип ИС/АСУ/ИТКС,
  интернет да/нет, нарушитель внутр./внешн.) фильтрует перечень по ключевым словам
- verify.py: suggest_threats_ai — ИИ предлагает актуальные угрозы по описанию объекта
- вкладка перестроена: компактная 2-колоночная раскладка, панель действий сверху:
  «⬇️ Загрузить угрозы ФСТЭК» | «⚙️ Подобрать (программа)» | «🤖 Подобрать (ИИ)» |
  «⚖️ Сравнить» | «🤖 Проверить безопасность через ИИ»
- окно выбора из словаря: 720x680 + поле поиска (фильтр по тексту, важно для 227 угроз)
- сравнение программа↔ИИ: окно с двумя списками, совпавшие подсвечены зелёным
2026-08-04 17:44:54 +04:00
prog1764 b6f595fd32 fix: импорт одного человека в поле ФИО (старые опросники)
- если в ячейке ФИО несколько человек (через запятую/точку с запятой/
  перевод строки или просто подряд) — остаётся первое полное ФИО
- применяется к должностным лицам (chief/ответственный/админ),
  комиссии и сотрудникам при импорте из опросника
- то же при открытии сохранённого файла (from_dict):
  «Коростелев Павел Сергеевич Хрящев Сергей Владимирович …» → «Коростелев Павел Сергеевич»
2026-08-04 17:34:17 +04:00
prog1764 42a243f7b6 feat: уточнение модели/количества для любых позиций словаря (ОС и др.)
- кнопка «✏️ Уточнить модель/кол-во» теперь всегда в окне выбора из словаря
- для позиций без маркера (Windows 10 Pro и т.п.) запрашивает количество:
  вводишь 5 → «Windows 10 Pro 5 шт.»
- для позиций с «(уточнить …)» вычищает маркер из названия и дописывает модель + количество
- формат: «Позиция Модель N шт.» (без запятой)
2026-08-04 17:31:09 +04:00
prog1764 0b3aff4ae9 feat: кнопка «✏️ Уточнить модель/кол-во» в окне выбора из словаря
- если в словаре есть позиции с «(уточнить …)» — в окне выбора появляется кнопка
- отмечаешь галочкой, например «Сервер (уточнить модель)» — жмёшь кнопку,
  программа запрашивает модель/версию/конфигурацию и количество
- в список добавляется полная строка: «Сервер Supermicro SSG-2027R -E1R24N, 2 шт.»
- работает для всех словарей: ПО (hw_sw, os_sw, app_sw), СЗИ и т.д.
2026-08-04 17:30:13 +04:00
prog1764 3ef1ff41e0 fix: импорт старых данных (обратная совместимость)
- объекты КИИ: добавлены варианты во мн.ч. в словари типов объекта
  (Автоматизированные системы управления, Информационно-телекоммуникационные сети)
  и способов взаимодействия (Проводной, Без проводной) — как в старом опроснике
- employees_access: фильтр плейсхолдеров («Формат: Фамилия Имя Отчество»,
  «Пример: …») и пустых строк при загрузке файла (from_dict) и при импорте опросника
2026-08-04 17:28:20 +04:00
prog1764 f04a5bd524 feat: вкладка «Безопасность» — словарики+чекбоксы, загрузка угроз ФСТЭК (БДУ) с датой актуализации, ИИ-проверка
- категория нарушителя — выпадающий список (attacker_categories.json)
- характеристика нарушителя, угрозы, инциденты, показатели критериев,
  обоснование, орг./тех. меры — списки с кнопками (+/-/редактировать/из словаря)
- словари: incidents.json, criteria_indicators.json, org_measures.json, tech_measures.json, threats.json
- кнопка «⬇️ Загрузить угрозы ФСТЭК»: парсит bdu.fstec.ru (227 угроз),
  сохраняет threats_fstec.json + дату актуализации; подпись «Актуально на: …»
  или предупреждение, если ещё не скачивалось
- кнопка «🤖 Проверить безопасность через ИИ»: DeepSeek сверяет заполненное
  с 236 приказом и даёт замечания/предложения (check_security_ai в verify.py)
- новое поле модели attacker_characteristics
2026-08-04 17:10:07 +04:00
prog1764 aae66dcca1 feat: вкладка «ПО» — словари ОС/аппаратных средств/прикладных программ + большое окно редактирования
- словари: hw_sw.json, os_sw.json, app_sw.json
- кнопка «📚 Из словаря» у каждого списка ПО (мультивыбор)
- большое окно добавления/редактирования позиции (560x220, многострочное)
2026-08-04 16:56:51 +04:00
prog1764 ba2a02d1cd feat: вкладка «Субъект» — кнопка «Заполнить из данных организации»
Если объект КИИ находится в той же организации — одним кликом копирует
наименование, адрес, ИНН, КПП из вкладки «Организация» в поля субъекта.
2026-08-04 16:54:38 +04:00
prog1764 28cd764795 feat: вкладка «ПО» — списки с кнопками (как «Средства защиты»)
3 списка: ПО и аппаратные средства, Операционные системы, Прикладные программы.
У каждого кнопки «+ Добавить», «- Удалить», «✏️ Редактировать».
Данные хранятся построчно (\n), импорт и генератор сохраняют переносы.
2026-08-04 16:31:25 +04:00
prog1764 300dfed5b3 Revert "feat: выпадающие списки открываются кликом в любом месте поля (не только по стрелке)"
This reverts commit 463745123c.
2026-08-04 15:59:52 +04:00
prog1764 f5548f2fb8 feat: вкладка «ПО» — многострочные поля (списки построчно, как в опроснике)
- hw_sw/os_sw/app_sw теперь tk.Text с прокруткой вместо однострочного Entry
- импортёр сохраняет переносы строк (_clean_multiline), а не схлопывает в одну строку
- _collect_is/_on_is_select поддержка Text-виджетов
2026-08-04 15:59:06 +04:00
prog1764 463745123c feat: выпадающие списки открываются кликом в любом месте поля (не только по стрелке)
Добавлен обработчик _combo_open для всех комбобоксов: клик по полю
раскрывает список, не нужно тянуть курсор в правый угол к стрелке.
2026-08-04 15:56:52 +04:00
prog1764 4ca596102f fix: убраны галочки ЛВС/Интернет из вкладок объекта КИИ
По 236 приказу эти признаки неактуальны — полный перечень характеристик
объекта уже есть в отдельной вкладке «Сеть».
2026-08-04 15:55:30 +04:00
prog1764 19b481a540 feat: во все выпадающие списки добавлен пустой пункт (сброс выбора)
Комбобоксы сферы, типа, архитектуры, типового объекта, категории/цели/способа сети
теперь имеют пустую строку в начале values — можно сбросить выбор.
2026-08-04 15:54:02 +04:00
prog1764 cf2a80c470 fix: импортёр отбрасывает текст-подсказки из примечаний; выпадающие списки только для выбора
- importer: фильтр HINT_MARKERS — значения вида «Формулировка должна строиться...», «Например...», «Выберите из...» и т.п. не импортируются в поля объекта
- ui: все Combobox (сфера, тип, архитектура, типовой объект, категория/цель/способ сети) — state='readonly', нельзя редактировать вручную
2026-08-04 15:52:56 +04:00
prog1764 9489e6a37d fix: импорт средств защиты — каждая программа отдельным средством
Проблема: clean_value заменял переносы строк на пробелы, из-за чего
список программ в одной ячейке (каждая с новой строки) склеивался
в одну строку. Теперь сырые значения ячеек сохраняются (raw_rows),
разбивка по \n/;/, названия не режутся (KES ≠ KSC).
2026-08-04 15:46:34 +04:00
prog1764 4e7c3463f4 feat: вкладки «Сеть» и «ПО» вместо «Сети и ПО», словарики сети, «Безопасность» вместо «Безопасность (236)»
- вкладка «Сеть»: категория сети (словарик), провайдер, цель взаимодействия (словарик), способ взаимодействия (словарик), ЛВС/Интернет
- вкладка «ПО»: ПО и аппаратные средства, ОС, прикладные программы
- словари: net_categories.json, net_purposes.json, net_methods.json
- вкладка безопасности переименована в «Безопасность»
2026-08-04 15:38:08 +04:00
prog1764 ffbe96d8c0 feat: вкладка «Субъект» — как в опроснике (5 полей)
- Наименование организации, эксплуатирующей объект
- Адрес местонахождения
- Элемент (компонент) объекта, который эксплуатируется лицом
- ИНН лица, эксплуатирующего объект
- КПП его обособленных подразделений

Убраны лишние поля субъекта (руководитель, отв. за безопасность, подразделение, телефон, email), модель/UI/импорт/variables приведены в соответствие
2026-08-04 15:35:53 +04:00
prog1764 ed71343d92 fix: ОКВЭД импорт/DaData/словарь+интернет, доменное имя, вкладка ОКИИ → вложенные вкладки, словарики, СЗИ разбивка, адрес отдельно
- ОКВЭД: resolve_okved (словарь okved.json + DaData suggest okved2), применяется при импорте и DaData; галочки «ОКВЭД осн./доп.» в «что применять»
- DaData: показ и подстановка доп. ОКВЭД
- доменное имя: поле во вкладке «Организация» + импорт
- вкладка «Объекты КИИ»: сверху Наименование/Описание/Категория, остальное вкладками: Основное (назначение, сфера, тип, архитектура, типовой отраслевой объект — со словариками и выпадающими списками), Субъект, Сети и ПО, Безопасность (236), СЗИ, Пользователи ОКИИ
- новые словари: spheres.json, object_types.json, architectures.json, typical_objects.json
- адрес объекта — в отдельное поле (не в описание)
- СЗИ: разбивка слипшихся названий (Kaspersky...)
2026-08-04 15:33:36 +04:00
prog1764 2037925986 feat: ОКИИ — ОКВЭД (импорт+DaData), доменное имя, поля 236 приказа ФСТЭК
- ОКВЭД: починен импорт (split по запятым/точкам с запятой), добавлен okvedExtra и domainName в DEFAULT_SETTINGS + merge полей по var в load_settings (старый import_settings.json теперь дополняется)
- DaData: проверка и подстановка основного/доп. ОКВЭД
- Вкладка «Организация»: поле «Доменное имя и внешний IP» + импорт из опросника
- Вкладка «Объекты КИИ»: поля 236 приказа — сведения (назначение, сфера, тип, архитектура, типовой отраслевой объект), субъект (12 полей), сети и ПО (категория сети, оператор, цель/способ взаимодействия, ПО/аппаратные средства, ОС, прикладные), безопасность (нарушитель, угрозы, инциденты, показатели критериев, обоснование, орг./тех. меры)
- importer: распознавание полей 236 из опросника, variables: новые переменные шаблонов
2026-08-04 14:42:33 +04:00
prog1764 ce1b56066a feat: переделка под ОКИИ (187-ФЗ) — объекты КИИ вместо ИС, категории 1-3, ОКВЭД, убраны ПДн/бумажные носители
- вкладка «Информационные системы» → «Объекты КИИ», убрана «Структура объекта»
- «Тип угроз»/«УЗ» → категория значимости 1/2/3/без категории
- удалены Категории ПДн, кол-во записей, перечень/субъекты/действия с ПДн + словари
- «Пользователи ИС» → «Пользователи ОКИИ», средства защиты оставлены
- вкладка «Бумажные документы» удалена полностью (GUI + логика + модели)
- ОКВЭД: поля во вкладке «Организация», словарь okved.json, выбор галочками, импорт
- нормализация регистра адреса DaData (КАПС → нормальный)
- importer: объекты КИИ (наименование объекта, ПО, СЗИ, пользователи)
2026-08-04 13:58:23 +04:00
prog1764 b115f9e2b4 feat: импортёр 187-ФЗ под опросник ОКИИ (5.25) — словарь полей, распознавание «Наименование объекта» 2026-08-04 13:06:58 +04:00
prog1764 da4946cb59 feat: ребрендинг под 187-ФЗ (КИИ)
- Все упоминания 152-ФЗ заменены на 187-ФЗ (заголовок окна, справка,
  импорт, переменные, docstring'и, spec)
- import_152fz -> import_187fz, direction '152fz' -> '187fz'
- autosave_152 -> autosave_187
- Опросный_лист_152_ФЗ.xlsx -> Опросный_лист_187_ФЗ.xlsx
- Промпт ИИ: 'юрист по защите персональных данных (152-ФЗ)' -> 187-ФЗ
2026-08-03 23:25:18 +04:00
prog1764 ac122451b3 fix: _set_app_icon разрывал __init__ (NameError: root is not defined) 2026-08-03 22:29:54 +04:00
prog1764 eee1842421 feat: иконка на окне программы (заголовок/панель задач) + в ресурсах exe 2026-08-03 22:05:44 +04:00
kneon223557 bb987894b2 Обновить dokogen/api_settings.py 2026-08-03 22:03:38 +04:00
kneon223557 19b74fc72a Обновить dokogen/dictionaries/pd_items.json 2026-08-03 22:02:28 +04:00
kneon223557 5a407f2568 Обновить dokogen/dictionaries/pd_categories.json 2026-08-03 22:01:52 +04:00
kneon223557 faefa786c5 Обновить dokogen/dictionaries/pd_actions.json 2026-08-03 22:01:20 +04:00
prog1764 4893899d5d feat: иконка — 64/128px из нового оригинала (512x512) 2026-08-03 21:59:26 +04:00
prog1764 73edfdf533 feat: иконка — 48px из нового оригинала (512) 2026-08-03 21:58:12 +04:00
prog1764 86836c2c9c feat: иконка — 48px из отдельного оригинала (все размеры из своих файлов) 2026-08-03 21:56:51 +04:00
prog1764 aa6056e686 feat: иконка — каждый размер из отдельного оригинала (16/24/32/48/64/128/256) 2026-08-03 21:56:03 +04:00
prog1764 c14094c71e feat: иконка — все размеры из оригинальных рисунков (16px отдельный, 24-32 из малого, 48-256 из большого) 2026-08-03 21:55:11 +04:00
prog1764 95b89c7758 feat: иконка — комбинированный ICO (мелкие 16-32 из малого рисунка, крупные 48-256 из большого) 2026-08-03 21:53:56 +04:00
prog1764 337fbe37c5 feat: иконка 1024x1024 (ICO 16-256px) для exe 2026-08-03 21:52:30 +04:00
prog1764 0b92aab49b feat: иконка приложения (dokogen/icon.ico) подключена к сборке 2026-08-03 21:49:21 +04:00
prog1764 71eda2ec3f Исходный код DokoGen (генератор документов 152-ФЗ) 2026-08-03 21:46:55 +04:00