Санитизация данных: удаление ФИО и паролей перед отправкой в LLM (regex в n8n).
1. Управленческая задача: Защита конфиденциальных данных и соблюдение комплаенса.
Санитизация данных (Data Sanitization — очистка данных) — удаление персонально идентифицируемой информации (ФИО, email, телефоны, банковские карты) и особенно паролей перед отправкой текста в LLM (Large Language Model — большая языковая модель) — это абсолютное требование информационной безопасности и комплаенса (Compliance — соответствие нормам законодательства). Даже если ваш Open WebUI работает на собственном сервере, риск утечки, сохранения или некорректной обработки чувствительных данных всегда существует. Цель — гарантировать, что LLM никогда не получит доступ к конфиденциальной информации клиентов, что защищает ваш бизнес от юридических рисков, штрафов и репутационного ущерба.
2. Инструмент: Регулярные выражения (Regex).
- Regex (Regular Expressions — регулярные выражения): Это мощный язык для поиска и манипулирования текстовыми шаблонами. С его помощью можно описать, как выглядят email-адреса, номера телефонов, пароли и т.д., и затем заменить их на "заглушки".
- n8n как фильтр: n8n идеально подходит для выполнения санитизации, так как он является центральным оркестратором, через который проходят все данные перед отправкой в LLM.
3. Механизм санитизации в n8n.
Перед отправкой любого клиентского запроса или переписки в ноду Open WebUI, n8n включает в себя следующие шаги:
- Блок "Code" или "Regex": В n8n используются специальные блоки или кастомный JavaScript-код для применения регулярных выражений.
- Примеры Regex-паттернов для удаления/замены:
- ФИО (Фамилия Имя Отчество): Может быть сложнее из-за разнообразия, но можно искать общие паттерны
[А-Я][а-я]+\s[А-Я][а-я]+\s?[А-Я][а-я]*(русские ФИО) и заменять на[ИМЯ_УДАЛЕНО]. - Email-адреса:
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}. Замена:[EMAIL_УДАЛЕН]. - Номера телефонов:
(?:\+?(\d{1,3}))?[-. (]*(\d{3})[-. )]*(\d{3})[-. ]*(\d{4}). Замена:[ТЕЛЕФОН_УДАЛЕН]. - Пароли: Это наиболее критичный пункт. Пароли редко встречаются в явном виде, но могут быть в скринах или логах. Важно искать слова, предшествующие паролю (например, "Пароль:", "Password:"), и удалять следующее за ними слово/фрагмент. Например,
(Пароль|Password)[:\s]*([^\s]+)и заменять на(Пароль: [УДАЛЕНО]). - IP-адреса:
\b(?:\d{1,3}\.){3}\d{1,3}\b. Замена:[IP_УДАЛЕН]. - Номера кредитных карт:
\b(?:\d[ -]*?){13,16}\b. Замена:[НОМЕР_КАРТЫ_УДАЛЕН].
- ФИО (Фамилия Имя Отчество): Может быть сложнее из-за разнообразия, но можно искать общие паттерны
- Последовательность: Санитизация должна быть одним из первых шагов в любом воркфлоу n8n, который отправляет клиентские данные в LLM.
4. Снижение рисков.
- Даже локальные LLM: Хотя Open WebUI работает на вашем сервере, внутренние логи LLM, кэши или модели могут теоретически сохранить эти данные. Санитизация устраняет этот риск.
- Комплаенс: Соблюдение GDPR, ФЗ-152 и других законов о персональных данных.
- Доверие клиентов: Гарантия конфиденциальности для клиентов.
- Предотвращение инсайдерских угроз: Даже если модель будет скомпрометирована, в ней не будет конфиденциальных данных.
5. Управленческие выгоды.
- Юридическая защита: Снижение риска штрафов и судебных исков за утечку данных.
- Репутационная безопасность: Сохранение доверия клиентов и партнеров.
- Снижение внутренних рисков: Защита от случайной или преднамеренной компрометации данных через AI.
- Стандартизация безопасности: Единый подход к обработке конфиденциальной информации.
- Спокойствие собственника: Уверенность в том, что ваши AI-системы безопасны.
