Перейти к основному содержанию

Documentation Index

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Изоляция Claude Code ограничивает то, что сеанс может читать, писать и достигать в сети. Это особенно важно, когда вы позволяете Claude работать с меньшим количеством запросов разрешений, запускаете его без присмотра или указываете на код, которому вы не полностью доверяете. Claude Code может работать в нескольких видах изолированных сред, начиная от легкой песочницы для каждой команды и заканчивая полностью отдельной виртуальной машиной. На этой странице рассматривается, как:
  • Сравнить доступные подходы к изоляции по тому, что они изолируют, что они требуют и сколько настроек требуется
  • Выбрать подход, который соответствует вашей цели и модели угроз
  • Начать работу с выбранным подходом, от встроенной Bash песочницы до выделенной виртуальной машины
  • Обеспечить изоляцию для каждого разработчика в вашей организации
Для более широкой модели безопасности см. Security. Для развертываний Agent SDK см. Secure deployment.

Сравнение подходов к sandboxing

Первые два подхода в таблице ниже работают на хост-операционной системе без контейнеров. Остальные помещают Claude Code внутри контейнера или виртуальной машины.
ПодходЧто изолируетсяТребует DockerУсилия по настройке
Sandboxed Bash toolКоманды Bash и их дочерние процессыНетМинимально на macOS; низко на Linux и WSL2
Sandbox runtimeВесь процесс Claude Code, включая инструменты файлов, серверы MCP и hooksНетНизко
Dev containerПолная среда разработкиДаСреднее
Custom containerПолная среда разработкиДаСреднее-высокое
Virtual machineПолная операционная системаНетВысокое
Claude Code on the webПолная операционная система, размещенная AnthropicНетНет; требуется подписка Claude и GitHub
Sandboxed Bash tool встроен в Claude Code и ограничивает только команды Bash. Встроенные инструменты файлов, серверы MCP и hooks по-прежнему работают непосредственно на вашем хосте. Каждый другой подход в таблице помещает весь процесс Claude Code внутри границы изоляции, поэтому инструменты файлов, серверы MCP и hooks также ограничены.
Изоляция Sandbox снижает влияние нарушения, но не устраняет риск. Любой подход, который позволяет исходящий трафик в сети, все еще может утечь данные, которые может прочитать агент, и любой подход, который монтирует ваш каталог проекта с правом записи, все еще может изменить этот код. Перед тем как полагаться на sandbox как на жесткий контроль, ознакомьтесь с ограничениями безопасности.Изоляция также не изменяет то, что отправляется модели. Ваши подсказки и файлы, которые читает Claude, передаются в API Anthropic или вашему настроенному поставщику с sandbox или без него. См. Data usage для информации о том, что отправляет Claude Code и как это сократить.

Выберите подход

Сопоставьте вашу цель со строкой ниже, затем прочитайте раздел деталей, который следует.
Вы хотитеНачните с
Уменьшить запросы разрешений во время повседневной работы на собственной машинеSandboxed Bash tool, включенный с /sandbox
Позволить Claude работать без присмотра с --dangerously-skip-permissions или в режиме autoПредварительно настроенный dev container, любой контейнер или VM, или sandbox runtime
Изолировать серверы MCP и hooks, а также Bash, без DockerСреда выполнения sandbox
Работать с ненадежным репозиториемВыделенная виртуальная машина или Claude Code on the web, если у вас есть подписка Claude и подключенный аккаунт GitHub
Стандартизировать изолированную среду в командеПредварительно настроенный dev container, скопированный в ваш репозиторий
Использовать Claude Code с устройства без локальной настройкиClaude Code on the web, который требует подписку Claude и подключенный аккаунт GitHub
Требовать изоляцию для каждого разработчика в вашей организацииEnforce isolation across an organization
Работать на нативном хосте WindowsКонтейнер или VM, или запустить Bash sandbox внутри WSL2

Как изоляция связана с режимами разрешений

Режимы разрешений определяют, выполняется ли вызов инструмента и будете ли вы запрошены в первую очередь. Изоляция ограничивает то, что может получить доступ команда после ее выполнения. Эти два работают вместе: когда режим разрешений позволяет действиям выполняться без вашего запроса, граница изоляции ограничивает то, что эти действия могут достичь. --dangerously-skip-permissions полностью удаляет проверку для каждого действия, поэтому граница изоляции — это единственное, что ограничивает то, что может сделать Claude. Всегда запускайте его внутри контейнера, VM или sandbox runtime, чтобы инструменты файлов, серверы MCP и hooks также находились внутри границы. Auto mode заменяет запрос классификатором, который проверяет действия и блокирует те, которые выходят за пределы запроса, нацеливаются на неизвестную инфраструктуру или кажутся вызванными враждебным контентом, который прочитал Claude. Классификатор — это контроль для каждого действия, а не граница изоляции, поэтому граница изоляции все еще добавляет защиту в глубину для автоматических запусков и не требуется так, как для --dangerously-skip-permissions. Sandboxed Bash tool сам по себе ограничивает только Bash, поэтому его недостаточно для полностью автоматических запусков в любом режиме. Вы можете комбинировать подходы: запуск sandboxed Bash tool внутри контейнера или VM дает вам ограничения команд на уровне ОС поверх внешней границы окружения. Для информации о том, как сам Bash sandbox взаимодействует с правилами разрешений и режимами разрешений, см. How sandboxing relates to permissions and permission modes.

Sandboxed Bash tool

Этот вариант не поддерживает нативный Windows. На хостах Windows используйте WSL2 или один из подходов контейнера или VM ниже.
Sandboxed Bash tool встроен в Claude Code. Он использует примитивы операционной системы для ограничения доступа к файловой системе и сети каждой команды Bash, которую запускает Claude: Seatbelt, встроенную macOS песочницу и bubblewrap на Linux и WSL2. По умолчанию он позволяет записи в рабочий каталог и запрашивает в первый раз, когда команде требуется новый домен сети. Включите его с помощью команды /sandbox. Руководство Sandboxing охватывает режимы одобрения, границу по умолчанию и как расширить или сузить ее. Песочница для каждой команды не охватывает все, что работает в сеансе:
  • Другие встроенные инструменты, такие как Read, Edit и WebFetch, работают внутри процесса Claude Code и не порождают произвольный код. Правила разрешений для пути или домена управляют ими вместо этого.
  • Серверы MCP и hooks — это отдельные процессы, которые работают без ограничений на хосте.
Чтобы поместить встроенные инструменты, серверы MCP и hooks все позади одной границы ОС, запустите весь процесс Claude Code внутри sandbox runtime, dev container или custom container.

Sandbox runtime

Пакет @anthropic-ai/sandbox-runtime оборачивает весь процесс в ту же изоляцию Seatbelt или bubblewrap, которую использует встроенный Bash sandbox. Запуск Claude Code через него ограничивает каждый инструмент, hook и сервер MCP в сеансе, а не только Bash. Среда выполнения — это бета-версия исследовательского предпросмотра, и ее формат конфигурации может измениться по мере развития пакета. Среда выполнения по умолчанию запрещает весь доступ на запись и в сеть, поэтому настройте ее перед запуском Claude Code через нее. В ~/.srt-settings.json или файле, который вы передаете с --settings, разрешите доступ на запись по крайней мере к вашему каталогу проекта и путям конфигурации Claude Code ~/.claude и ~/.claude.json. Разрешите домены сети, которые требует ваш сеанс, включая api.anthropic.com или конечную точку вашего настроенного поставщика. Полную схему конфигурации см. в README пакета. После того как файл параметров находится на месте, запустите Claude Code с npx и передайте claude как команду для обертывания:
npx @anthropic-ai/sandbox-runtime claude
Claude Code запускается внутри sandbox с границами файловой системы и сети, которые вы настроили. Та же команда работает для sandboxing отдельных серверов MCP или других вспомогательных процессов.

Dev containers

Dev container запускает Claude Code внутри контейнера Docker, которым управляет VS Code или совместимый редактор, с вашим проектом, смонтированным внутри. Вы можете определить свой собственный с помощью каталога .devcontainer/ в вашем репозитории. Репозиторий claude-code публикует пример dev container с брандмауэром iptables по умолчанию deny в качестве отправной точки. Скопируйте его в ваш репозиторий и отрегулируйте список разрешений брандмауэра, базовый образ и закрепленную версию Claude Code в соответствии с вашей средой. Поскольку брандмауэр блокирует неодобренный исходящий трафик, конфигурация, подобная этой, поддерживает запуск Claude Code с --dangerously-skip-permissions для автоматической работы.

Custom container

Вы можете запустить Claude Code в любом образе контейнера Docker или OCI с вашими собственными сетевыми политиками, смонтированными томами и профилями seccomp. Это наиболее распространенный путь для организаций с существующей инфраструктурой контейнеров или CI-бегунами. Несколько управляемых служб sandbox и удаленного выполнения могут размещать контейнер для вас. Тот же контрольный список применяется к любому контейнеру, который вы работаете: проверьте, что смонтировано с правом записи, какие учетные данные и токены доступны внутри него и какую политику исходящего трафика в сети он позволяет. Вы можете комбинировать встроенный Bash sandbox внутри контейнера для ограничений для каждой команды. Непривилегированные контейнеры требуют параметра nested-sandbox, описанного в Sandboxing troubleshooting.

Virtual machine

Выделенная виртуальная машина обеспечивает самое сильное разделение, с собственным ядром и, в облачных или microVM развертываниях, собственным виртуализированным оборудованием. Варианты включают облачные экземпляры, локальные гипервизоры и microVM, такие как Firecracker. Используйте этот подход, когда вы оцениваете ненадежный код, когда ваша политика безопасности требует разделения на уровне ядра между агентом и хостом, или когда ни один подход на уровне хоста не соответствует вашим требованиям соответствия. Функция sandboxes Docker Desktop предоставляет microVM с собственным демоном Docker и синхронизацией рабочего пространства, которая может запустить Claude Code на хостах, которые уже имеют Docker Desktop.

Claude Code on the web

Claude Code on the web запускает каждый сеанс в изолированной виртуальной машине, управляемой Anthropic. Сетевой прокси обеспечивает список разрешений по умолчанию, и отдельный прокси хранит ваш токен GitHub вне sandbox, выдавая ограниченные учетные данные для доступа к репозиторию внутри него. Используйте этот подход, когда вы хотите полную изоляцию VM без самостоятельного предоставления инфраструктуры, или когда вы делегируете задачи с устройства, которое не имеет локальной среды разработки. Это требует подписку Claude и подключенный аккаунт GitHub, и сеансы клонируют ваш репозиторий из GitHub. См. Claude Code on the web для доступности плана и опций аутентификации GitHub.

Enforce isolation across an organization

Отдельные разработчики могут выбрать любой из подходов выше. Что организация может обеспечить и какими инструментами, зависит от подхода:
  • Built-in Bash sandbox: единственный подход, который Claude Code обеспечивает сам. Доставьте ключи параметров sandbox через managed settings, либо как файл, управляемый вашим MDM, либо через server-managed settings на Claude.ai. См. Enforce sandboxing with managed settings для ключей для развертывания и как помешать разработчикам расширить политику.
  • Dev containers: зафиксируйте пример dev container в ваших репозиториях для стандартизации среды в команде. Это соглашение, а не граница обеспечения, потому что Claude Code не требует контейнер. Если разработчики не должны иметь возможность запустить Claude Code вне его, обеспечьте это с помощью инструментов управления устройствами вашей организации или инструментов разрешения программного обеспечения.
  • Custom containers and VMs: распределите Claude Code через одобренный образ и используйте инструменты управления устройствами вашей организации или инструменты разрешения программного обеспечения для предотвращения установки вне его.

See also

Эти страницы охватывают детали конфигурации и политики для подходов выше.
  • Sandboxing: настройте встроенный инструмент sandboxed Bash
  • Dev container: предварительно настроенный контейнер Docker для разработки
  • Security: полная модель безопасности Claude Code
  • Secure deployment: руководство по изоляции для приложений Agent SDK
  • Settings: все ключи конфигурации sandbox, включая доставку управляемых параметров