Как выбрать песочницу для ИИ-агента в рабочей среде
Шаги
Шаг 1: Определите границы изоляции: запускайте код агента и его инструменты в отдельном процессе или виртуальной машине, запретите прямой доступ к основной системе и разделите рабочие среды для разработки, проверки и эксплуатации.
Шаг 2: Проверьте сетевые ограничения: разрешите только необходимые адреса и протоколы, запретите произвольные исходящие соединения, доступ к внутренним служебным адресам и загрузку исполняемых файлов без проверки.
Шаг 3: Разделите права инструментов: выдайте каждому инструменту отдельную учётную запись с минимальными разрешениями, ограничьте операции чтения и записи и запретите агенту самостоятельно менять собственные полномочия.
Шаг 4: Добавьте подтверждение опасных действий: требуйте явного согласия человека перед удалением данных, изменением настроек, отправкой сообщений, публикацией результатов и выполнением операций с финансовыми или юридическими последствиями.
Шаг 5: Ограничьте ресурсы: установите пределы времени работы, памяти, процессора, размера файлов, количества вызовов инструментов и глубины цепочки действий, чтобы сбой или зацикливание агента не вывели систему из строя.
Шаг 6: Настройте журналирование: записывайте запросы, решения о вызове инструментов, параметры операций, результаты, ошибки, идентификатор версии агента и время выполнения, но удаляйте из журналов пароли, ключи, токены и лишние персональные данные.
Шаг 7: Проверьте сценарии отказа до запуска: протестируйте обход ограничений, подмену инструкций в документах, попытки чтения чужих данных, выход за сетевые правила и повторное выполнение опасной операции, после чего настройте аварийную остановку и отзыв доступа.
Чеклист
- Песочница отделена от основной системы и не имеет лишних каналов связи.
- Сетевой доступ разрешён по списку, а не запрещён только для известных адресов.
- Каждый инструмент использует отдельную учётную запись с минимальными правами.
- Опасные и необратимые действия требуют подтверждения человека.
- Установлены ограничения на время, память, файлы, вызовы и стоимость операций.
- Журналы содержат полный контекст действий, но не секреты и лишние персональные данные.
- Есть аварийная остановка, отзыв полномочий и проверка журналов после инцидента.
Типичные ошибки
- Запускать агента с правами владельца сервера или общей служебной учётной записи.
- Считать изоляцию достаточной, если у среды остаётся неограниченный доступ к сети.
- Разрешать одному инструменту одновременно читать, изменять и удалять критичные данные.
- Записывать в журналы ключи доступа, содержимое секретных документов и полные персональные данные.
- Проверять только штатные сценарии и не тестировать вредоносные инструкции в документах и запросах.
- Полагаться на подтверждение человека без понятного описания операции, её последствий и затрагиваемых данных.