Skip to content

11. Безопасность и комплаенс

Навигация: Назад: Алгоритмы и ИИ | Далее: DevOps

Оглавление

Безопасность и комплаенс

Безопасность — один из ключевых уровней SmartSupport. Платформа проектируется с учётом: - требований государственных заказчиков, - требований к хранению и обработке персональных данных, - наличия онлайн-чатов и многоканальной маршрутизации, - использования ИИ-моделей, - возможных угроз в публичной среде, - on-premise развёртываний в закрытых периметрах.

SmartSupport поддерживает высокий уровень защищённости и прозрачности работы.

Модель угроз SmartSupport

SmartSupport использует комплексную модель угроз, включающую:

1. Угрозы внешнего контура - попытки несанкционированного доступа к API; - перебор паролей / ключей; - DDoS-атаки на веб-чат и каналы; - подмена webhook-ов каналов (Telegram, Max); - попытки внедрения вредоносных вложений (фото/видео/архивы).

2. Угрозы внутреннего контура - компрометация учётных записей сотрудников; - несанкционированное изменение БЗ; - утечка персональных данных через операторов; - злоупотребление правами администратора; - ошибки конфигурации, приводящие к открытию систем наружу.

3. Угрозы ИИ-слоя - галлюцинации, ведущие к неверным рекомендациям гражданам; - использование ИИ для обхода ограничений; - некорректная классификация обращения; - раскрытие лишних данных при генерации ответа.

4. Угрозы при интеграциях - перехват токенов; - MITM-атаки в незащищённых сетях; - несогласованность версий API; - несоблюдение ограничений по данным при передаче во внешние системы.

Архитектура прав доступа

SmartSupport использует строгую роль-based access control (RBAC) с возможностью расширения.

Основные роли 1. Оператор
- обработка обращений;
- взаимодействие с гражданами;
- корректировка ответов ИИ;
- просмотр необходимых данных.
2. Старший оператор / модератор
- работа с очередями;
- контроль SLA;
- эскалация;
- доступ к аналитике.
3. Knowledge Manager
- управление БЗ;
- публикация статей;
- утверждение изменений;
- работа с KB Curator Agent.
4. Администратор системы
- настройка каналов;
- управление пользователями;
- доступ к логам;
- конфигурация интеграций.
5. Технический администратор (DevOps/IT)
- доступ к настройкам контура;
- работа с журналами;
- управление ключами;
- развертывание обновлений.
6. Интеграционный сервис / API-ключ
- минимальные права (самый строгий режим).

Принципы прав доступа - минимально необходимый доступ (Least Privilege); - role isolation — роли не пересекаются; - segregation of duties — операторы не должны управлять БЗ; - операции с персональными данными логируются; - канальные адаптеры работают с ограниченными токенами.

Работа с чувствительными данными

SmartSupport учитывает требования по защите: - ПДн; - служебной информации; - адресов; - вложений; - данных ЕСИА; - пользовательских сообщений.

Принципы обработки данных - данные граждан → хранятся только внутри страны; - в логах → только обезличенная информация; - в RAG → embeddings не содержат персональных данных; - канальные интеграции → только по HTTPS/TLS 1.2+; - в on-prem → работа без подключения к интернету; - внешние LLM не получают ПДн (важно!).

Анонимизация данных

Анонимизация встроена в систему на уровне: - логирования; - хранения обучающих данных; - подготовки датасетов; - Social Monitoring; - аналитики обращений.

Удаляются / маскируются: - ФИО → “Гражданин [ID]”; - телефоны → “+7[mask]”; - адреса → “улица [MASK], дом [MASK]”; - координаты; - номера паспортов, лицевых счетов, СНИЛС; - идентификаторы ЕСИА.

Не уходит в LLM: - персональные данные; - вложения, содержащие ПДн; - чувствительные данные о здоровье/семье; - служебные номера.

Если используется внешний LLM — применяется LLM Privacy Filter.

Требования государственных стандартов

SmartSupport соответствует требованиям:

ФЗ-152 (Персональные данные)
- локализация данных в РФ;
- защита канала;
- сегментация доступа;
- хранение ключей в защищённой среде.

ГОСТ Р 57580 (Комплексная защита финансовых/гос-систем)
- контроль целостности;
- двухфакторная авторизация;
- регулярный аудит;
- защита каналов.

Приказы ФСТЭК по защите ИТС (режим ГИС)
- угрозы уровня 1/2;
- защита от НСД;
- изоляция сегментов;
- аттестация контура (в случае on-prem).

GDPR (при работе с экспортом данных)
SmartSupport по умолчанию:
- не отправляет данные за пределы РФ;
- поддерживает экспорт в анонимизированном виде;
- может работать в режиме “GDPR-compliant only”.

Логи и аудит

Система ведёт журнал: - действий операторов; - публикаций в БЗ; - результатов Judge Agent; - изменений прав; - входов в систему; - событий безопасности; - интеграционных ошибок; - прохождения цепочек агентов.

Возможности аудита: - поиск по пользователю; - фильтрация по каналу; - просмотр всех действий за период; - экспорт для ИБ-службы; - подтверждение версий статей БЗ.

Политики хранения данных

SmartSupport поддерживает раздельные политики хранения:

  1. Обращения и диалоги
  2. по умолчанию: 12–36 месяцев;
  3. на гос-контуре может быть увеличено;
  4. архивирование в S3/Minio;
  5. физическое удаление по запросу ведомства.
  6. Логи операторов
  7. 12 месяцев;
  8. доступны только администраторам.
  9. Вложения
  10. хранятся отдельно от структурированных данных;
  11. удаляются вместе с обращениями;
  12. могут быть отключены для on-prem (по регламентам).
  13. Embeddings / векторные данные
  14. не содержат ПДн;
  15. срок хранения не ограничен.
  16. Резервные копии
  17. бэкапы PostgreSQL — ежедневно;
  18. бэкапы Minio — еженедельно;
  19. холодное хранение — 90–180 дней.
  20. Данные для обучения моделей
  21. только обезличенные;
  22. без вложений;
  23. без служебных данных;
  24. перед использованием проходит аудит ИБ.

Итог

SmartSupport обеспечивает: - безопасность данных граждан; - соответствие регуляциям РФ; - защищённую мультиагентную архитектуру; - прозрачный аудит; - строгий RBAC; - гибкие политики хранения; - возможность полного on-premise развёртывания; - гарантии отсутствия утечек при работе с LLM.

Это делает систему пригодной для: - муниципалитетов; - госорганов; - МКУ; - образовательных и социальных учреждений; - крупных предприятий с повышенными требованиями ИБ.

Диаграмма модели угроз

flowchart LR
    subgraph Z0["Z0: Внешняя среда / Интернет"]
        C1["Гражданин<br>(Max/Telegram/Web)"]
        C2["Гражданин<br>Email / Соцсети"]
        ATK["Злоумышленник из интернета"]
    end

    subgraph Z1["Z1: Пограничная зона (DMZ)<br>Reverse Proxy / WAF / Канальные адаптеры"]
        RP["Reverse Proxy / WAF<br>(Nginx/Traefik)"]
        MAX_AD["Адаптер Max<br>Webhook/API"]
        TG_AD["Адаптер Telegram<br>Webhook/API"]
        WEB_CHAT["Web-чат<br>(виджет на сайте)"]
        EMAIL_GW["Email-gateway<br>IMAP/SMTP"]
        VK_AD["Адаптер соцсетей<br>VK / др."]
        API_GW["API Gateway<br>внешний REST API"]
    end

    subgraph Z2["Z2: Внутренняя зона приложений<br>Core Backend / LLM Service / Агенты"]
        INJ["Ingestion Service<br>приём событий"]
        AR["Agent Router<br>маршрутизация запросов"]
        CLS["Classification Agent"]
        RAG["Retrieval Agent<br>RAG-поиск"]
        ANS["Answer Generator Agent"]
        JUD["Judge Agent<br>проверка качества/безопасности"]
        KB_SVC["Knowledge Base Service<br>управление БЗ"]
        TICKETS["Ticket Service<br>обращения и статусы"]
        TASKS["Tasks Service<br>задачи исполнителям"]
        MON["Monitoring Service<br>Social Monitoring"]
        ANA_SVC["Analytics Service"]
        ADM_UI["Админ-панель<br>Операторы / Администраторы"]
    end

    subgraph Z3["Z3: Зона данных (Secure Data Zone)"]
        DB_PG["PostgreSQL<br>обращения, пользователи"]
        DB_VEC["Vector DB<br>embeddings без ПДн"]
        OBJ["Object Storage<br>фото/файлы"]
        LOGS["Логи и аудит"]
        SECRETS["Хранилище секретов<br>ключи, токены"]
    end

    subgraph Z4["Z4: Внешние сервисы (ограниченное доверие)"]
        EXT_LLM["Внешний LLM-провайдер<br>GigaChat / YandexGPT<br>(при использовании)"]
        EXT_CRM["Внешние CRM/ERP<br>Bitrix24 / amoCRM / 1C"]
        MON_EXT["Внешние источники<br>публичные чаты/паблики"]
    end

    subgraph Z5["Z5: Внутренние пользователи"]
        OP["Оператор<br>служба поддержки"]
        KM["Knowledge Manager<br>ответственный за БЗ"]
        ADMIN["Администратор системы"]
        DEVOPS["DevOps / ИБ / Инженеры"]
        INSIDER["Потенциальный инсайдер"]
    end

    C1 -->|HTTPS / TLS| RP
    C1 -->|мессенджеры| MAX_AD
    C1 -->|мессенджеры| TG_AD
    C2 --> EMAIL_GW
    C2 --> VK_AD

    RP --> WEB_CHAT --> INJ
    MAX_AD --> INJ
    TG_AD --> INJ
    EMAIL_GW --> INJ
    VK_AD --> INJ
    API_GW --> INJ

    INJ --> AR
    AR --> CLS
    AR --> RAG
    AR --> MON
    CLS --> TICKETS
    RAG --> ANS
    ANS --> JUD
    JUD --> TICKETS
    JUD -->|низкая уверенность| OP

    KB_SVC --> DB_PG
    RAG --> DB_VEC
    RAG --> DB_PG

    TICKETS --> TASKS
    TICKETS --> ANA_SVC
    MON --> ANA_SVC

    TICKETS --> DB_PG
    TASKS --> DB_PG
    ANA_SVC --> LOGS
    INJ --> LOGS
    AR --> LOGS
    JUD --> LOGS

    INJ --> OBJ

    SECRETS --- INJ
    SECRETS --- API_GW
    SECRETS --- MAX_AD
    SECRETS --- TG_AD
    SECRETS --- EMAIL_GW
    SECRETS --- VK_AD

    ANS -->|обезличенный контекст| EXT_LLM
    JUD -->|обезличенный контекст| EXT_LLM

    TICKETS --> EXT_CRM
    TASKS --> EXT_CRM

    MON_EXT --> MON
    MON --> DB_VEC

    OP -->|через ADM_UI| TICKETS
    OP -->|через ADM_UI| WEB_CHAT
    KM -->|через ADM_UI| KB_SVC
    ADMIN --> ADM_UI
    DEVOPS --> SECRETS
    DEVOPS --> LOGS

    ATK -. попытки взлома .-> RP
    ATK -. DDoS / bruteforce .-> API_GW
    ATK -. фишинг / спам .-> EMAIL_GW
    ATK -. вредоносный контент .-> WEB_CHAT

    INSIDER -. злоупотребление правами .-> ADM_UI
    INSIDER -. несанкционированный доступ .-> DB_PG
    INSIDER -. попытка выгрузки логов .-> LOGS

    EXT_LLM -. риск утечки данных .-> ATK
    JUD -. защита от галлюцинаций .-> ANS

    classDef zone fill:#f3f4f6,stroke:#9ca3af,stroke-width:1px,color:#111827;
    classDef external fill:#fee2e2,stroke:#b91c1c,color:#7f1d1d;
    classDef service fill:#e0f2fe,stroke:#0ea5e9,color:#0f172a;
    classDef data fill:#ecfdf3,stroke:#16a34a,color:#052e16;
    classDef user fill:#fef9c3,stroke:#ca8a04,color:#713f12;
    classDef threat stroke:#b91c1c,color:#7f1d1d,stroke-dasharray:5 3;

    class Z0,Z1,Z2,Z3,Z4,Z5 zone;
    class C1,C2,ATK,EXT_LLM,EXT_CRM,MON_EXT external;
    class RP,MAX_AD,TG_AD,WEB_CHAT,EMAIL_GW,VK_AD,API_GW,INJ,AR,CLS,RAG,ANS,JUD,KB_SVC,TICKETS,TASKS,MON,ANA_SVC,ADM_UI service;
    class DB_PG,DB_VEC,OBJ,LOGS,SECRETS data;
    class OP,KM,ADMIN,DEVOPS,INSIDER user;
    class ATK,INSIDER threat;