Skip to content

云网络策略控制云沙箱的出站连接。它是一个独立的、仅限网络的策略存储,包含 Docker 账户作用域和单个沙箱作用域。

IMPORTANT

本地策略配置不会复制到云沙箱。请用 sbx --cloud policy 配置云端规则,并通过连接 检查和策略日志验证网络访问。

理解策略作用域 ​

云端 CLI 支持账户级和沙箱级策略作用域。你的账户策略为你在该 Docker 账户下创建的云 沙箱提供默认值。沙箱策略为某个云沙箱追加规则。在适用的各个策略中,匹配的拒绝规则优先 于允许规则。

云端创建会使用云账户策略、传递给命令的网络规则,以及智能体或 kit 声明的网络访问权限。 sbx --cloud create 和 sbx --cloud run 都会把本地网络策略和组织策略留在宿主机上。 把本地沙箱迁往云端的操作也是如此,只是你在本地添加的规则不会传输。

在云存储中定义预期的策略。创建之后,检查已配置的规则,并 验证连接判定。

初始化账户策略 ​

把账户策略设置为 allow-all、balanced 或 deny-all:

console
$ sbx --cloud policy init deny-all

该默认值适用于你在该 Docker 账户下的云沙箱。你可以在初始化之后添加规则,也可以在创建 沙箱时指定初始规则。deny-all 默认值仍然允许适用沙箱规则或智能体 kit 规则所放行的 目标地址。

balanced 预设把 deny-all 设为默认值,并为常见的开发服务添加允许规则。要为某个沙箱 设置默认值,使用 sbx --cloud policy init deny-all --sandbox cloud-project。

你可以再次运行 init 来更改默认值。已有的允许规则和拒绝规则保持不变。在选择其他预设 之前,用 reset 删除账户规则。

添加网络规则 ​

添加账户级例外:

console
$ sbx --cloud policy allow network api.github.com:443

把规则限定到某个沙箱:

console
$ sbx --cloud policy allow network api.anthropic.com:443 \
    --sandbox cloud-project

当同一个目标地址同时匹配允许规则和拒绝规则时,拒绝规则优先。

云端规则匹配网络目标地址。不支持 HTTP 方法和路径限制、--protocol 以及本地治理配置 文件。

你也可以在创建沙箱时添加初始规则:

console
$ sbx --cloud create --name cloud-project \
    --allow-network api.github.com:443 \
    --deny-network example.com claude

检查网络策略 ​

检查你的账户策略或某个沙箱已配置的策略:

console
$ sbx --cloud policy ls
$ sbx --cloud policy ls cloud-project

沙箱视图显示它自己的策略文档;当沙箱没有策略文档时显示你的账户默认值。它不显示适用 规则的完整组合。

要验证策略是否生效,先尝试从沙箱发起连接,然后查看连接判定:

console
$ sbx --cloud exec cloud-project curl -I https://api.github.com
$ sbx --cloud policy log cloud-project

这些记录描述的是云网络策略的判定结果,不是 Docker AI Governance 的组织审计日志。

移除网络规则 ​

按模式移除规则,无论它位于允许列表还是拒绝列表中:

console
$ sbx --cloud policy rm network --resource api.github.com:443
$ sbx --cloud policy rm network --sandbox cloud-project --resource api.anthropic.com:443

删除自定义账户策略,恢复为平台默认值:

console
$ sbx --cloud policy reset

该命令会请求确认,并打印重置之后服务器保存的默认值。在脚本中使用 --force。本地守护 进程不受影响。沙箱专属的策略仍然保留,并且依然可以授予访问权限。请单独检查这些策略。