Изоляция тенантов в мультитенантном SaaS: что спросить
На AI-платформе изоляция должна соблюдаться не только в базе, но и в индексе знаний, иначе цена конкурента может прозвучать из вашего бота. В статье объясняем изоляцию тенантов в мультитенантном SaaS: семь слоёв, риск, особый для AI, родительские и дочерние аккаунты, вопросы поставщику, тест «секретного факта» и изоляцию в интеграциях.
Короткий ответ
Мультитенантный SaaS — это одна платформа, обслуживающая многих клиентов (тенантов) на одной инфраструктуре. Изоляция тенантов означает, что данные, знания, ключи и журналы одного клиента никогда не видны другому и не влияют на него. На AI-платформе это ещё важнее: изоляция должна соблюдаться не только в базе данных, но и в индексе знаний AI — прайс одной компании никогда не должен выйти ответом клиенту другой. Покупателю стоит спросить о семи слоях: база, знания AI, файлы и записи, ключи и интеграции, журналы, webhook и обучение AI-модели.
Что значит мультитенантность
Большинство SaaS-платформ не поднимают отдельный сервер для каждого клиента: все клиенты делят одно приложение и инфраструктуру, а их данные разделены логически. Это снижает стоимость и ускоряет обновления. В этом же и риск: ошибка в правилах разделения может показать данные одной компании другой.
Альтернатива — отдельная среда для каждого клиента (single-tenant) — дороже и обычно выбирается только для очень крупных или особо регулируемых клиентов. Для большинства компаний вопрос не «мультитенантность или нет», а «как построена изоляция и как её проверяют».
Семь слоёв изоляции
- База данныхКаждый запрос ограничен идентификатором тенанта; запрос одного тенанта не может вернуть запись другого.
- Индекс знаний AIПоиск по знаниям идёт только среди знаний этой компании.
- Файлы и записиЗаписи звонков, PDF и изображения разделены по тенантам, ссылки не открываются другим.
- Ключи и интеграцииКлюч CRM и адрес webhook одной компании используются только для её событий.
- ЖурналыАдминистратор одного тенанта не видит журналы другого.
- Webhook и уведомленияСобытие уходит только на адрес своего тенанта.
- AI-модельДанные клиента не используются для обучения общей модели, а разговоры одного клиента не влияют на ответы другому.
Риск, особый для AI: смешение знаний
В обычном SaaS изоляция в основном живёт в базе данных. У AI-платформы есть ещё одно место — векторный индекс, где AI ищет знания. Если поиск не ограничен тенантом, бот одной компании может найти фрагмент знаний другой компании как «лучшее совпадение» и сообщить его клиенту. Это риск и для конфиденциальности, и для репутации: цена конкурента может прозвучать из вашего бота.
Родительские и дочерние аккаунты
Агентства и мультибрендовые группы часто управляют несколькими аккаунтами компаний из одного места. Здесь нужно разделять два вопроса: подписка и расчёты могут быть общими, а данные — раздельными. Клиентская база бренда A не должна быть видна боту бренда B, а доступ сотрудника агентства к каждому бренду выдаётся отдельно.
Вопросы поставщику
- Как разделяются данные между тенантами: база, индекс знаний, файлы?
- Может ли поиск по знаниям вернуть знания другого клиента?
- Используются ли наши данные для обучения общих AI-моделей?
- Когда и как сотрудники поставщика могут получить доступ к нашим данным, журналируется ли это?
- Как тестируется изоляция и когда был последний тест?
- Как удаляются наши данные по окончании договора — включая резервные копии?
Ответы нужно получить письменно — в анкете безопасности.
Как проверить изоляцию
Покупатель не видит внутренних тестов поставщика, но может сам провести простые проверки. Откройте два тестовых аккаунта — или попросите у поставщика два тестовых тенанта — и в одном запишите уникальный вымышленный факт: «По субботам мы открываемся в 07:00». Затем спросите об этом бота второго аккаунта. Бот не должен этого знать. Ту же проверку проведите для выгрузки, поиска и отчётов.
Изоляция в ваших интеграциях
Ваша собственная интеграция тоже может нарушить изоляцию: если один адрес webhook принимает события двух брендов и не проверяет, к какому бренду относится событие, лид бренда A может попасть в CRM бренда B. Отдельный ключ для каждого тенанта или проверка идентификатора тенанта в каждом событии убирает этот риск. Запишите это в раздел безопасности документа требований к API-интеграции.
Иллюстративный пример
Это иллюстративный пример. Маркетинговое агентство строит AI-чат-ботов для трёх брендов-клиентов и управляет всеми из одного аккаунта агентства. На тестах агентство проводит проверку «секретного факта» между двумя брендами и подтверждает, что боты не видят знаний друг друга. Но в собственной интеграции агентства один адрес webhook общий для всех трёх брендов.
Исправление: отдельный ключ webhook для каждого бренда и проверка идентификатора бренда в каждом событии. Доступ сотрудников агентства тоже разделяют по брендам.
Типичные ошибки
- Спрашивать об изоляции только в базе и забыть индекс знаний AI.
- Довольствоваться устным «всё раздельно» от поставщика.
- У всех в аккаунте агентства доступ ко всем брендам.
- Общий адрес webhook в собственной интеграции.
- Не спросить, как удаляются данные по окончании договора.
Ограничения
Покупатель может проверить изоляцию лишь до определённой степени: он не видит внутреннюю архитектуру и опирается на письменные ответы поставщика, договор и, по возможности, независимые проверки. Если нужен сертификат, прямо спросите, какие сертификаты у поставщика есть, а каких нет. В регулируемых отраслях согласуйте требования с юристами и безопасностью.
Кто отвечает
Изоляция внутри платформы — ответственность поставщика, а ваша интеграция и права доступа — ваша. Это разделение должно быть ясно записано в договоре. Внутри компании вопросы изоляции входят в список ответственного за IT или безопасность — вместе с правами доступа, как описано в статье о SSO и ролевом доступе.
Изоляция в Vexvon
В Vexvon база знаний разделена по компаниям: в индексе знаний у каждой компании свой раздел, и поиск ограничен им. Согласно странице безопасности, данные клиента хранятся отдельно от аккаунтов других клиентов, а загруженные базы, разговоры, записи звонков и транскрипты не используются для обучения общих AI-моделей Vexvon. Для агентств и мультибрендовых групп есть модель родительской и дочерней компании: дочерняя разделяет подписку родительской. Для крупных клиентов мы заполняем анкету безопасности. Подробнее — безопасность.
Следующий шаг
Отправьте шесть вопросов поставщику письменно и сами проведите тест «секретного факта». Вопрос, оставшийся без ответа, — тема следующей встречи. Общие слои интеграции разобраны в статье о корпоративной интеграции AI. Другие статьи — в разделе о корпоративной интеграции; на ваши вопросы можно ответить вместе во время демо.